每个反应堆 运行 在它自己的线程中吗?
Does each reactor run in it's own thread?
分析我扭曲的应用程序我发现 twisted/application/app.py:startReactor
被调用了 496 次。除此之外,我看到线程泄漏:应用程序创建了约 500 个线程,其中大部分在 FUTEX_WAIT_PRIVATE
中处于空闲状态。在此分析期间,简单的负载测试是 运行: ~1rps.
这是否意味着代码 reactor.run()
中的某处正在泄漏?我应该从哪里开始挖掘?
一般来说,不会。 reactor.run
不启动线程。但是,如果您有一个启动 496 个反应器的应用程序,那么可能 它 启动线程,其中 运行 每个反应器。
分析我扭曲的应用程序我发现 twisted/application/app.py:startReactor
被调用了 496 次。除此之外,我看到线程泄漏:应用程序创建了约 500 个线程,其中大部分在 FUTEX_WAIT_PRIVATE
中处于空闲状态。在此分析期间,简单的负载测试是 运行: ~1rps.
这是否意味着代码 reactor.run()
中的某处正在泄漏?我应该从哪里开始挖掘?
一般来说,不会。 reactor.run
不启动线程。但是,如果您有一个启动 496 个反应器的应用程序,那么可能 它 启动线程,其中 运行 每个反应器。