2012-01-28 132 views
3

我怎么可以叉(通过过程包装),并扭曲完全重置在新的过程。 我必须从具有大量反应堆的工艺中产生一个新工艺,但是我需要将反应器(在新工艺中)移除并添加其他东西。蟒蛇扭曲和多处理

例如,我需要一个glib2reactor在父母和孩子....但扭曲通知我反应器已经安装(叉后)。 Fork用每个扭转反应器将父母的记忆复制到孩子身上..我可以如何“重置”孩子的扭曲?

感谢你的帮助,

Dudda

回答

0

os.fork()克隆当前的过程中,孩子的进程ID返回给父0到孩子。

if os.fork(): 
    "parent" 
else: 
    "child" 

如果使用os.system()subprocesses模块你得到一个新鲜的新工艺。

您可以在os.system()命令中使用分支&来避免阻塞。

error = os.system('ls &') 

os.execv和朋友用目标命令替换当前进程。

0

Twisted支持通过twisted.internet.interfaces.IReactorProcess启动任意子进程(包括使用Twisted的进程)。有关如何使用它的详细信息,请参阅the process howto