您可以使用中的回调
Pool.apply_async。
这样的事情应该可以为您完成工作。
from multiprocessing import Pooldef part_crack_helper(args): solution = do_job(args) if solution: return True else: return Falseclass Worker(): def __init__(self, workers, initializer, initargs): self.pool = Pool(processes=workers, initializer=initializer, initargs=initargs) def callback(self, result): if result: print "Solution found! Yay!" self.pool.terminate() def do_job(self): for args in product(seed_str, repeat=4): self.pool.apply_async(part_crack_helper, args=args, callback=self.callback) self.pool.close() self.pool.join() print "good bye"w = Worker(num_proc, init, [total_count])w.do_job()



