Rei*_*e45 7 c# python parallel-processing parallel.foreach
我有96个txt文件需要处理.现在我正在使用for循环并一次执行一个,这个过程非常慢.生成的96个文件,不需要合并.有没有办法使它们并行运行,ala Parallel.foreach在C#中?当前代码:
for src_name in glob.glob(source_dir+'/*.txt'):
outfile = open (...)
with open(...) as infile:
for line in infile:
--PROCESS--
for --condition--:
outfile.write(...)
infile.close()
outfile.close()
Run Code Online (Sandbox Code Playgroud)
希望此进程并行运行source_dir中的所有文件.
假设限制因素确实是处理而不是I/O,您可以使用joblib在多个CPU上轻松运行循环.
>>> from math import sqrt
>>> from joblib import Parallel, delayed
>>> Parallel(n_jobs=2)(delayed(sqrt)(i ** 2) for i in range(10))
[0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1975 次 |
| 最近记录: |