python用os.system运行多个脚本文件_关于多线程:在Python中与os.system()并行运行两个可执行文件?...

这篇博客探讨了如何在Python中并行运行多个可执行文件,如a.exe和b.exe。文章指出,os.system会阻塞,不适合并发执行。建议使用subprocess.Popen来实现非阻塞执行,并展示了如何结合线程来运行多个任务。此外,还提到了使用ExitStack和threading.Thread等方法来管理和控制进程。
摘要由CSDN通过智能技术生成

我希望并行运行两个可执行文件a.exe和b.exe,一个接一个地调用。

我尝试的时候

os.system('a.exe')

#some code

os.system('b.exe')

b.exe是仅在我杀死a.exe之后才开始?

为什么会发生?

如何同时运行两者? (我需要做多线程吗?)

注意:我在Windows平台上

如果我们忽略异常,那么同时运行几个程序很简单:

#!/usr/bin/env python

import subprocess

# start all programs

processes = [subprocess.Popen(program) for program in ['a', 'b']]

# wait

for process in processes:

process.wait()

看到Python线程化多个bash子进程吗?

如果要停止先前启动的进程(如果任何程序无法启动):

#!/usr/bin/env python3

from contextlib import ExitStack

from subprocess import Popen

def kill(process):

if process.poll() is None:  # still running

process.kill()

with ExitStack() as stack:  # to clean up properly in case of

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值