我在stackoverflow上看到了一些帖子,並通讀了oracle發佈在銷燬線程上的教程。據我所知,一旦你start()
一個線程,你不能使用stop()
刪除該線程。不建議實際從調度程序中刪除該線程,而是建議無限期地創建線程sleep()
。這個想法是對的嗎?銷燬Java中的線程
此外,這帶我到我的下一個問題,這就是爲什麼人們使用thread pools?.
而不是「睡覺」一個線程,它是更多的資源,使用該線程來處理其他工作,而不是創建新的線程。請讓我知道,如果我對multi-thread
管理的理解是正確的。 Java不允許以安全的方式完全刪除thread
。
這很有道理。我有一個登錄線程,當它完成我的另一個線程時,我想銷燬它。據我所知,它不應該使用任何鎖,所以我非常想把它告訴給.stop()。然而它是一個擺動線程,所以我可能不知道它在gui調度程序下的任何鎖定。我怎麼知道我簡單的gui線程可能鎖定什麼? –