【问题标题】:How to get the 'reactor' when the twisted application is started by twistd?当扭曲的应用程序由扭曲启动时如何获得“反应器”?
【发布时间】:2011-10-03 05:33:53
【问题描述】:

我的应用程序使用“twisted.web.client.Agent”来获取 Web 内容。但是代理类需要一个“反应器”实例来启动。如果我使用“twistd”启动我的应用程序,则根本不会有“reactor.run()”。那么我怎样才能得到'reactor'实例呢?

【问题讨论】:

    标签: python service twisted


    【解决方案1】:

    我希望有一个better answer,但是在 Twisted 应用程序中获取当前活动反应器的方法是:

    from twisted.internet import reactor
    

    重要的是不要在所有地方都这样做,而是在靠近应用程序代码的“顶部”时这样做,以便您可以轻松更换反应器以进行测试或以其他方式修改其行为(例如,您可能会更改 connectTCP 以通过代理)。这就是为什么Agent 采用reactor 参数而不是自己导入当前参数的原因。

    【讨论】:

    • 我找到了this。因此,“反应堆”是全球性的。谢谢@Glyph
    猜你喜欢
    • 1970-01-01
    • 2015-05-04
    • 1970-01-01
    • 2011-01-16
    • 2011-08-15
    • 1970-01-01
    • 2012-09-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多