【发布时间】:2012-02-23 12:06:45
【问题描述】:
我的问题的要点是当父级(在这种情况下为守护进程)被杀死时,多处理队列会发生什么。
我有一个后台运行的守护进程,它为子进程排队作业:
class manager(Daemon):
def run(self):
someQueue = MP.Queue()
someChild = MP.Process(target=someCode, args=(someArgs))
someChild.start()
...
如果经理被杀死(假设它没有尝试使用someQueue,因此如文档中所述将其损坏),是否有办法恢复队列中的数据?
我看到的两个理论解决方案是在退出此子进程之前清理someChild 中的someQueue。还转储队列以便我可以在经理退出时恢复队列的状态也可以解决我的问题。但是,在实施之前,最好能朝着正确的方向轻推。
谢谢,
【问题讨论】:
标签: python queue multiprocessing