同时运行多个python脚本实例

use*_*372 10 python concurrency fork python-multithreading

我试图创建86个task.py实例同时运行.

import sys
import subprocess

for file in range(86):
    subprocess.call([sys.executable,'task.py',str(file)+'in.csv',str(filen)+'out.csv'])
Run Code Online (Sandbox Code Playgroud)

fal*_*tru 16

subprocess.call等待命令完成.subprocess.Popen改为使用:

import sys
import subprocess

procs = []
for i in range(86):
    proc = subprocess.Popen([sys.executable, 'task.py', '{}in.csv'.format(i), '{}out.csv'.format(i)])
    procs.append(proc)

for proc in procs:
    proc.wait()
Run Code Online (Sandbox Code Playgroud)

  • @MasayoMusic,替换 `"hugo server -D"` -> `['hugo', 'server', '-D']`。如果这不起作用,请发布一个单独的问题,以便其他人可以回答您。 (2认同)