在Twisted中,processExited和processEnded之间的区别是什么?

kme*_*lvn 8 twisted

正如标题所说,ProcessProtocol类上的这两个函数之间有什么区别?如果应该使用一个文件而不是另一个文档,那么文档有点稀疏?

最好是,我正在寻找一些用例来证明这一点.

Gly*_*yph 8

我想文档在这一点上有点稀疏.如果不存在此类票证,请随时提交票证以改进API文档.

processExited当一个进程以正式的进程管理意义退出时,即调用exit()或返回时调用main().

但是,这并不总是你想要的.有时,一个进程生成一个子进程,放手其stdin和stdout,生产,你(产卵父进程,在这种情况下)希望,然后将这些数据代表的责任exit()是因为它的完成设定的事情了.

processEnded当一个进程已经退出都调用做完所有的I/O在其管理的文件描述符(stdin,stdout,和childFDs),他们已经关闭.如果您只是为了阅读其输出而产生某些东西,那么这就是您最关心的通知.