如何在python中知道reactor是否正在运行?

时间:2014-05-21 06:50:17

标签: python python-2.7 twisted reactor twisted.internet

如何知道反应堆状态(是否运行)?

我试过这个(从谷歌搜索):

from twisted.internet import reactor
if reactor.callWhenRunning(lambda: None) is not None: 
    # do some work

它有效,但这看起来很奇怪。

还有什么方法可以做到这一点?

1 个答案:

答案 0 :(得分:10)

您没有说明您正在使用哪个反应堆,但this page表示ReactorBase是反应堆的基类。

同样在同一页面上,它提到了一个实例变量running,进一步解释为here

它说

  

running =一个bool,在启动时从 期间为为真   其余的时间都是假的。

有了这些信息,我们可以将您的代码更改为:

if reactor.running:
    # do some work