问题描述
在使用python multiprocess包下的Process打开子进程,并在打开的子进程中再打开一个二级子进程,这时候发现kill掉子进程后,二级子进程并没有被杀死,甚至导致内存泄漏宕机。
上代码:
import time
from multiprocessing import Process, Queue
def run1(q_message: Queue):
print("this is sub-process of sub-process 1, pid: ")
while True:
q_message.put(False)
def sub_process_1(q_message: Queue):
print("this is sub-process 1 of main process")
p = Process(target=run1, args=(q_message, ))
p.start()
print("sub-sub-process pid: ", p.pid)
def main():
q_messages = Queue(