请向我解释,这两个类之间的有什么区别?
我注意到Python2中存在multiprocessing模块,但是功能上呢?
发布于 2016-07-11 16:11:09
正如文档中所述,concurrent.futures.ProcessPoolExecutor是multiprocessing.Pool的包装器。因此,同样适用于multiprocessing的限制(例如,对象需要是可选择的)。
然而,concurrent.futures的目标是提供一个抽象接口,它可以用于以方便的方式管理不同类型的异步任务。例如,将异步策略从使用流程池更改为使用线程通常就像更改一两行代码一样简单(而不需要自己编写全部代码)。抽象的另一个(相关的)好处是,concurrent.futures提供了一个需要记住的API --您可以选择最适合该任务的执行器。是否使用进程IO绑定?太棒了,使用ThreadPoolExecutor。因为全球翻译锁(GIL),你会很难加快速度吗?没问题,使用ProcessPoolExecutor。
https://stackoverflow.com/questions/38311431
复制相似问题