Python:列表中N个文件的并行处理

Python:列表中N个文件的并行处理,python,list,Python,List,有一个文件列表,我正在使用某些功能逐个处理这些文件: list_of_files = [file_1, file_2, file_3, .... file_n] # each file we are processing in function function_x(file) for file in list_of_files: function_x(file) 但是处理一个文件需要很长时间,所以我想并行处理4个文件,当其中任何一个文件完成后,继续处理下一个表单列表文件尝试使用:

有一个文件列表,我正在使用某些功能逐个处理这些文件:

list_of_files = [file_1, file_2, file_3, .... file_n]

# each file we are processing in function function_x(file)

for file in list_of_files:
   function_x(file)
但是处理一个文件需要很长时间,所以我想并行处理4个文件,当其中任何一个文件完成后,继续处理下一个表单列表文件

尝试使用:


请参阅以了解如何使用线程。类似地,您也可以很好地使用它,在python站点上查看一下,自己尝试一下,当您遇到问题时,请返回这里并提供代码,然后您将获得帮助。如何确保它在处理四个文件中的一个文件完成后再继续下一个文件。上面的代码将同时处理所有N个文件,我的机器将crash@user3292147如果您阅读
Pool
的文档,它会说“如果进程是
None
,则使用
cpu\u count()
返回的数字”,因此它不会为
N
文件创建进程,除非您另有说明,否则它将创建多达
cpu\u count
个进程。
import multiprocessing
pool = multiprocessing.Pool()
pool.map(function_x, list_of_files)