当前位置: 代码迷 >> python >> 使用另一个进程 python multiprocessing 杀死进程
  详细解决方案

使用另一个进程 python multiprocessing 杀死进程

热度:92   发布时间:2023-07-16 09:54:53.0

我正在尝试用 Python 创建一个脚本。 这个想法是启动 3 个进程,其中 2 个不断打印一条消息,第三个是在几秒钟后杀死它们。 问题是我不知道如何告诉第三者应该终止哪些进程。

from multiprocessing import *
import time

def OkreciLevi():
   while 1:
       print "okrecem levi"
       time.sleep(3)

def OkreciDesni():
   while 1:
       print "okrecem desni"
       time.sleep(3)

def Koci(levi,desni):
   for vrednost in range(2):
       print str(vrednost)
       time.sleep(3)
   levi.terminate()
   desni.terminate()
   print "kocim"

if __name__== '__main__':
   levi=Process(target=OkreciLevi)
   desni=Process(target=OkreciDesni)
   koci=Process(target=Koci, args=(levi,desni))
   koci.start()
   levi.start()
   desni.start()
   levi.join()
   desni.join()
   koci.join()

假设您使用的是类似 *nix 的操作系统,我想您需要:

  1. 多处理工作者 ;
  2. 向他们发送SIGTERM 例如使用os.kill

此外, 可能对您有用。