在我的應用程序使用ParameterizedThreadStart
委託創建線程後,該線程執行一些初始化並運行完成。後來,我可以觀察到此線程不再有效,因爲它的IsAlive
屬性爲false,而ThreadState
屬性爲ThreadState.Stopped
。C#託管線程清理
一旦線程達到此狀態,它們將保留在我的應用程序中,仍然作爲線程對象存在,直到我的應用程序關閉。一旦他們不再活躍,我可以採取哪些措施來處理他們?我想刪除對象並釋放任何資源,以便在任何給定的時刻我唯一的線程對象是活動線程。但是線程並沒有實現IDisposable,所以我不知道我該怎麼做。
我認爲這可能是這種情況,所以我盡我所能刪除對象的所有引用。使用VS調試器我檢查了線程periodicaly的狀態,它仍然是一個有效的線程對象。我想這意味着我仍然在某處引用它? – Chris 2009-02-10 20:36:54