今天在執行一段程式時出現了個bug,就是主函數執行的一個子執行緒任務還沒結束的時候就推出執行了。但在主程式中加入sleep()之後子執行緒會正常執行後推出(但是休眠時間過短也不行)。 debug子執行緒主要是卡在執行資料庫操作那一行程式碼(可能是應為比較耗時吧,主執行緒來不及等你結束。。。)。
Following the voice in heart.
檢查你的子執行緒是否設定了setDaemon(true),Jvm會在下列情形時退出:
setDaemon(true)
所有運行執行緒都是daemon執行緒時
或沒有任何非daemon執行緒正在運行時
線程之間沒有父子關係。如果需要等待,可以考慮 join() 方法。 參考:/a/11...
join()
檢查你的子執行緒是否設定了
setDaemon(true)
,Jvm會在下列情形時退出:所有運行執行緒都是daemon執行緒時
或沒有任何非daemon執行緒正在運行時
線程之間沒有父子關係。如果需要等待,可以考慮
join()
方法。 參考:/a/11...