python - 处理来自同一事件循环的 SimpleXMLRPCServer 调用和 Asyncore.dispatchers 事件

标签 python event-handling twisted rpc asyncore

如何处理同一事件循环中的 Asyncore.dispatcher(s) 和 SimpleXMLRPCServer 事件?

附注我已经知道你们中的一些人可能会推荐 Twisted,但 Twisted 的问题是它对于我的需求来说有点太高级了。特别是,我通过重写依赖于计时器的 Asyncore.dispatcher.writable() 方法来进行 UDP 流量控制。不确定这是否/如何在 Twisted 中可行。

最佳答案

为此,您应该使用 Twisted :-)。您不能将 SimpleXMLRPCServer 放入异步循环中;它是同步代码,预计会阻塞。

使用 Twisted 进行流量控制,即使使用 UDP,也很容易。您的 DatagramProtocol 不是重写像 writable() 这样的方法,可以在其 transport 属性上调用 stopReading/stopWriting/startReading/startWriting 等方法。可以看这些方法here .

关于python - 处理来自同一事件循环的 SimpleXMLRPCServer 调用和 Asyncore.dispatchers 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7899346/

相关文章:

python - 将复杂 SQL 转换为 Python Pandas 合并和/或连接

javascript - 如何防止在窗口上附加多个处理程序

c# - 在 C# 中具有强类型发送者的 EventHandler

python - Twisted irc python bot - 缓冲消息

python - 如何为每个ID分配一个组号(n=1,2,3.....)?

python - 如何在条形图(Python)的条形图上方写文字?

python - 如何在 Python 3(0x80 及更高版本)中编写 ANSI 兼容字节?

jquery - 使用 .live() 测试注册到给定对象的事件

Sqlalchemy session 和高速公路

python - 使用 Twisted 的守护进程 python 项目