我想从python (我在linux下)控制几个相同类型的子进程。我想:
我可以用spawnl启动一个进程,并得到pid。用这个pid,我可以用杀死来阻止它。我相信也有一种方法来问它是否与pid一起运行。
问题是,如果发生以下情况:我启动一个进程,记住pid。这个过程结束时我没有注意到,另一个完全不同的过程开始得到相同的pid。我试图扼杀我的过程,我杀死了一个完全不同的过程。
在python中启动和控制进程的更好方法是什么?谢谢!
发布于 2010-06-02 21:22:28
您可以使用subprocess.Popen启动其他进程,并保存生成的Popen对象。使用该对象上的方法,您可以检查进程是否仍然活着,等待它完成,终止它,终止它--所有这些都没有任何基于pid的混淆的风险!作为一个优点,这也是一种更跨平台的方法,尽管在这种情况下您可能并不特别关心。
https://stackoverflow.com/questions/2961660
复制相似问题