use*_*451 7 python multithreading
在下面的链接中map,对Pool类的方法进行了解释。
似乎它阻塞了,直到结果准备好为止。这意味着pool.close(); pool.join()在运行后无需执行任何操作pool.map,但是在此博客中以这种方式进行了演示。
运行后我是否缺少某些东西或需要做pool.close pool.map(而不是pool.map_async?注意我正在使用[multiprocessing.dummy][2],它提供了与多处理类似的api,但是在后台使用了线程。
https://docs.python.org/2/library/multiprocessing.html#multiprocessing.pool.multiprocessing.Pool.map
pool.close 告诉池不接受任何新作业。
pool.join 通知池等待所有作业完成然后退出,从而有效清理池。
因此,阻止父进程只是pool.join做事的副作用。
的确,当您调用时pool.map(),父进程将被阻塞,直到map返回结果。但它是一个很好的做法,close并join在pool使用它,更好地管理资源和控制异常之后。
| 归档时间: |
|
| 查看次数: |
3975 次 |
| 最近记录: |