我想创建很多进程,
每个进程比前一个进程运行5秒,
即,每个进程开始之间的时间间隔是5秒,
以便:
运行过程1
等5秒
运行过程2
等5秒
运行过程3
等5秒
…..
喜欢:
for i in range(10):
p = multiprocessing.Process(target=func)
p.start()
sleep(5)
#after all child process exit
do_something()
但我希望在所有进程退出后调用do_something()
我不知道如何在这里进行同步
有了python池库,我可以拥有
pool = multiprocessing.Pool(processes=4)
for i in xrange(500):
pool.apply_async(func, i)
pool.close()
pool.join()
do_something()
但通过这种方式,4个进程将同时运行,
我无法确定进程之间的时间间隔,
是否可以创建一个进程池,然后获取每个进程,如
pool = multiprocessing.Pool(processes=4)
for i in xrange(500):
process = pool.fetch_one()
process(func, i)
time.sleep(5)
pool.close()
pool.join()
do_something()
是否有满足我需求的库或源代码片段?
谢谢