Re: [問題] 兩個 Thread 疑問

作者: popcorny (畢業了..@@")   2015-01-20 21:16:13
Thread不會消失,只會有以下幾種情形
1. Thread都結束了。以你的case就是ExecutorSerivce已經shutdown
如果沒有shutdown,ExecutorService裡面應該都會有Thread.
2. 所有的Thread都被卡住了,有可能是deadlock。
此時不是Thread消失,而是卡死了。
3. 有可能CPU太忙了,所以你submit的job都不會跑到。也許程式沒寫
跑到infinite loop之類的
4. 程式當掉了。那應該整個VM都不見了....
我想貴主管可能以process的思維,認為process可能消失(當掉)
但是Thread都是在同個process,通常非自願停掉,都會存在
所以只要注意1,2,3就好了
作者: cyclone350 (老子我最神)   2015-01-20 23:11:00
感謝回應。 我有個額外的疑問,這種情況要如何告知主管不必擔心此問題? 當下我也有給老闆類似的回應。如你本文提到的 "通常非自願停掉,都會存在",但是得到的回應會是 "通常? 那萬一消失了呢?"
作者: bitlife (BIT一生)   2015-01-21 11:47:00
我在想,你主管講的會不會是需要個watchdog?就是不管什麼原因,沒再繼續正常執行(不管是deadlock,error,core dump等),系統管理員要能儘快知道,或者能自動被watchdog再啟動,這個在監控或高可用性等系統下是蠻重要的考量
作者: Killercat (殺人貓™)   2015-01-21 12:00:00
所以你老闆是技術底,業務底,專案底,還是老闆底?這四種都有不同的說法 XD
作者: popcorny (畢業了..@@")   2015-01-21 13:04:00
這只能再跟主管溝通他的考量點了 XDD
作者: AmosYang (泛用人型編碼器)   2015-01-21 15:15:00
Killercat 正解 XD

Links booklink

Contact Us: admin [ a t ] ucptt.com