在python 2/3中是否可以在线程中运行多处理?
如果我不需要等待或从进程获取某些值,如何设置多处理以在进程完成执行后自动释放进程使用的内存,而不使用命令join()
?
我发现了这个Scoot S技巧:
def easy_parallize(f, sequence):
from multiprocessing import Pool
pool = Pool(processes=8)
result = pool.map(f, sequence)
cleaned = [x for x in result if not x is None]
cleaned = asarray(cleaned)
pool.close()
pool.join()
return cleaned
但这里有两个问题:
join()
,它使主程序在继续之前等待进程完成。