multiprocessing.dummy不会提高速度

时间:2018-06-20 20:03:10

标签: python multithreading python-multiprocessing

在其他文章中,我读到了在python中进行多线程操作所需要做的就是使用此简单代码

from multiprocessing.dummy import Pool as ThreadPool

pool = ThreadPool(8) 
results = pool.map(extract_from_file, file_list)

替换

for file in file_list:
   extract_from_file(file)

在我的情况下,extract_from_file(file)读取一个很长的文件,并将其切成有趣的序列,并保存在不同的文件夹中。

就我而言,多线程根本没有提高速度。但是,令我感到奇怪的是,我可以手动拆分列表,只需多次打开Spyder即可运行python的多个实例,而无需多线程处理,因此可以大大提高速度。可以证明什么吗,即我可以假设我的函数可以是多线程的,而不能使用此特定库吗?

0 个答案:

没有答案