Python2:multiprocessing.dummy.Pool 与 multiprocessing.pool.ThreadPool

use*_*847 4 python threadpool python-multithreading python-2.7 python-multiprocessing

在python 2中,multiprocessing.dummy.Pool和之间有什么区别multiprocessing.pool.ThreadPool吗?源代码似乎暗示它们是相同的。

Sha*_*ger 6

它们是相同的(在 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)
Run Code Online (Sandbox Code Playgroud)

一般来说,我更喜欢使用,multiprocessing.dummy.Pool因为 的存在multiprocessing.dummy 被正式记录在案,哪里multiprocessing.pool没有(这是一个内部实现细节)。