python中的多处理启动一个新进程。
在这个新进程中,我创建了2个新线程,并且在启动新进程的“主线程”中没有执行任何其他操作,似乎该进程已经消失。
示例:
new_process = multiprocessing.Process(target=new_proc_main, name=yyy)
new_process.start()
def new_proc_main():
thread1 = threading.Thread(target=xxxx, name=thread1)
thread1.start()
thread2 = threading.Thread(target=xxxx, name=thread2)
thread2.start()
如何在线程1和1之间保持新进程的活动。 2跑?
答案 0 :(得分:0)
import multiprocessing
import time
def new_main():
import threading
my_thread = threading.Thread(target=dummy_main)
my_thread.start()
my_thread.join()
def dummy_main():
while True:
print("thread running")
time.sleep(1)
print("start process")
p = multiprocessing.Process(target=new_main)
p.start()
关键是我必须拥有my_thread.join()
。
如果我没有,程序会立即退出。