在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Python/ Python主進(jìn)程和子進(jìn)程的問題,很有意思

Python主進(jìn)程和子進(jìn)程的問題,很有意思

兩段代碼,讓我陷入困惑 ...

  1. 在這段代碼中主進(jìn)程先于子進(jìn)程結(jié)束,然后跳出,過了兩秒,子進(jìn)程執(zhí)行并出結(jié)果

圖片描述

2.下面這段代碼 , 一共生成3個(gè)進(jìn)程, 主進(jìn)程執(zhí)行結(jié)束,不等待子進(jìn)程. 程序直接跳出.

圖片描述

那么問題來了,子進(jìn)程到底依賴不依賴主進(jìn)程的存在? 為什么這兩段代碼會(huì)有不同的表現(xiàn) ? 求大神解答.

回答
編輯回答
北城荒

首先回答你的問題:程序主進(jìn)程退出之后,其子進(jìn)程或子線程都會(huì)終止。

在簡單說下你上面的例子的線程:
1,os.fork是個(gè)比較特殊的方法,一般函數(shù)都是一次調(diào)用一次返回,但是它不同,它是一次調(diào)用兩次返回(一次在主進(jìn)程一次在子進(jìn)程),所以你看到print('main')執(zhí)行之后,其實(shí)主進(jìn)程還沒有退出(可以將sleep時(shí)間加大,然后通過ps命令查看);
2,第二個(gè)例子就很好的說明了:程序主進(jìn)程退出之后,其子進(jìn)程或子線程都會(huì)終止。

2017年8月29日 14:11