我正在使用多处理在一个单独的进程中产生一些CPU密集型工作,但我所看到的是,一旦我加入了衍生进程,僵尸仍然存在。我想知道我是否遗漏了某些东西或者对图书馆做错了什么。我的代码看起来像:
def worker(stuff, q):
#CPU intensive stuff goes here
q.put(res)
def parent:
q = Queue()
p = Process(target=worker, args=(stuff, q))
p.start()
res = q.get()
p.join()
#Continue with processing
我从队列中得到的结果很好但是当我看看我的ps输出时,我看到每个运行的实例都有一个解释器的僵尸实例。我有什么遗失的东西,我忘了清理吗?