在python 2中,multiprocessing.dummy.Pool
和multiprocessing.pool.ThreadPool
之间有什么区别吗?源代码似乎暗示它们是相同的。
答案 0 :(得分:2)
它们是相同的(在Py2和Py3上); multiprocessing.dummy.Pool
只是导入和调用multiprocessing.pool.ThreadPool
的精简包装。实际的代码是:
def Pool(processes=None, initializer=None, initargs=()):
from multiprocessing.pool import ThreadPool
return ThreadPool(processes, initializer, initargs)
通常,我更喜欢仅使用multiprocessing.dummy.Pool
是因为multiprocessing.dummy
的存在已得到正式记录,而multiprocessing.pool
却没有(这是内部实现细节)。