看板 Python 關於我們 聯絡資訊
各位前輩, 最近在練習多個執行緒的用法 其中 setDaemon() 這個方法不知為什麼無效 https://imgur.com/1xqJdLb 照理說bobj跑完 aobj尚未執行完 但由於有aobj.setDaemon(True) 整個程式應該就要結束 不應該再print a2出來 這個範例是參考'python 王者歸來 入門邁向高手之路'這邊寫的 跑出來卻跟書上不一樣 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.138.50.236 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1573009701.A.FDB.html
CodingMan: b 沒設定 所以程式還活著 所以 a 可以印出來 11/06 15:55
stucode: IPython 會在背景啟動 Python interpreter,不把它關掉 11/06 18:39
stucode: 就不會「整個程式結束」 11/06 18:40
stucode: 所以 5 秒後 a2 會照常印出來,因為執行緒還在跑。 11/06 18:40
stucode: https://i.imgur.com/q1bqCnt.png 11/06 18:40
stucode: 如果用一般方式執行,就可以觀察到執行緒被中斷: 11/06 18:40
stucode: https://i.imgur.com/sXpNbvl.png 11/06 18:41
wahahahaaa: 看到了 jupyter會把a跑完,但用visual studio就不跑完 11/11 15:23
wahahahaaa: 可以請教為什麼兩種平台跑的結果不一樣呢 11/11 15:24