加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

从Python控制进程

发布时间:2020-12-20 11:13:58 所属栏目:Python 来源:网络整理
导读:我想从 python(我在linux下)控制几个相同类型的子进程. 我想要: 启动他们. 阻止他们. 询问他们是否还在运行. 我可以使用spawnl启动进程,并获取pid.使用这个pid我可以用kill来阻止它.而且我确信还有一种方法可以询问它是否与pid一起运行. 问题是,如果发生以
我想从 python(我在linux下)控制几个相同类型的子进程.
我想要:

>启动他们.
>阻止他们.
>询问他们是否还在运行.

我可以使用spawnl启动进程,并获取pid.使用这个pid我可以用kill来阻止它.而且我确信还有一种方法可以询问它是否与pid一起运行.

问题是,如果发生以下情况该怎么办:
我开始一个过程,记住pid.该过程在我没有注意到的情况下结束,另一个完全不同的过程开始被分配相同的pid.我试图杀死我的进程,我杀了一个完全不同的进程.

在python中启动和控制进程的更好方法是什么?
谢谢!

解决方法

您可以使用 subprocess.Popen启动其他进程,并保存生成的 Popen object.通过该对象上的方法,您可以检查进程是否仍然存活,等待它完成,终止它,终止它 – 所有没有任何pid风险基于混乱!另外,这也是一种更加跨平台的方法,尽管在这种情况下您可能并不特别关注.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读