2013-01-06 111 views
1

我有一个Twisted应用程序守护进程,它是由twistd启动的。该守护程序充当守护程序管理器来管理许多其他Twisted应用程序守护进程。我可以通过TCP向管理器发送一个“新”命令,管理器应该产生(fork)另一个Twisted应用程序守护进程。我的问题是我该怎么做? fork后,我想我应该停止管理器的反应器循环,关闭打开的文件描述符(日志文件),然后运行新的Twisted应用程序守护进程。我想知道如何正确完成这些事情的细节。扭曲:从另一个应用程序守护进程产生应用程序守护进程

回答

1

您应该使用反应器的spawnProcess方法。有关其使用的详细信息,请参阅http://twistedmatrix.com/documents/current/core/howto/process.html

你不应该自己分叉或做任何其他步骤。他们很难做到正确,spawnProcess已经为你做了。

如果您对如何完成这些事情感到好奇,可以浏览variousimplementations

+0

你的意思是:reactor.spawnProcess(p,'twistd',['twistd','-ny','anotherApplication.py'],{}) – jjyao

+0

当然,类似的东西。毫无疑问,确切的参数取决于你之后的确切行为。 –