[英]What happens to threads that start in process after it ends
https://stackoverflow.com/a/45130246/13121815
在上面的帖子中,答案說您可以在進程內啟動線程,但是,如果進程先結束,線程會發生什么,我的意思是如果您刪除 bar 函數內線程的連接。
def foo():
print("Thread Executing!")
def bar():
threads = []
for _ in range(3): # each Process creates a number of new Threads
thread = threading.Thread(target=foo)
threads.append(thread)
thread.start()
# for thread in threads:
# thread.join()
if __name__ == "__main__":
processes = []
for _ in range(3):
p = multiprocessing.Process(target=bar) # create a new Process
p.start()
processes.append(p)
for process in processes:
process.join()
您要問的問題是“如果父進程在其子進程之前死亡會發生什么”。 子進程成為所謂的“孤兒進程”。 一個快速的duckduckgo搜索給了我這個: https ://linuxjourney.com/lesson/process-termination
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.