[問題] setDaemon 無效

作者: wahahahaaa (hah)   2019-11-06 11:08:19
各位前輩, 最近在練習多個執行緒的用法
其中 setDaemon() 這個方法不知為什麼無效
https://imgur.com/1xqJdLb
照理說bobj跑完 aobj尚未執行完 但由於有aobj.setDaemon(True)
整個程式應該就要結束 不應該再print a2出來
這個範例是參考'python 王者歸來 入門邁向高手之路'這邊寫的
跑出來卻跟書上不一樣
作者: CodingMan (程式俠)   2019-11-06 15:55:00
b 沒設定 所以程式還活著 所以 a 可以印出來
作者: stucode   2019-11-06 18:39:00
IPython 會在背景啟動 Python interpreter,不把它關掉就不會「整個程式結束」所以 5 秒後 a2 會照常印出來,因為執行緒還在跑。https://i.imgur.com/q1bqCnt.png如果用一般方式執行,就可以觀察到執行緒被中斷:https://i.imgur.com/sXpNbvl.png
作者: wahahahaaa (hah)   2019-11-11 15:23:00
看到了 jupyter會把a跑完,但用visual studio就不跑完可以請教為什麼兩種平台跑的結果不一樣呢

Links booklink

Contact Us: admin [ a t ] ucptt.com