2013-05-16 44 views
0

這可能是一個愚蠢的問題,但到目前爲止我還找不到自己的答案。
我有一個C#/。Net應用程序創建任務對象來執行其部分工作。如果有任何異常提升,我將它們記錄爲here,但垃圾收集又如何?如果我不等待這些任務,它是否仍會清理其使用的資源?.NET中任務的垃圾收集

+0

你想讓GC刪除這些任務嗎? AFAIK,C#GC不這樣做... –

+0

我想防止內存泄漏。我不知道這個詞是刪除一項任務。我希望在任務完成時清理它,而不管可能引發的異常情況。 – Noich

回答

0

這可能是值得的GC是如何工作的http://msdn.microsoft.com/en-us/library/ee787088.aspx

讀但是,相當多,如果一些地方有一個參考的Task對象則GC不會收集它。

+0

假設我沒有 - 我在一個方法中本地創建一個新的Task對象,並且只記錄它的異常(如我的問題中的鏈接所述)。在這種情況下,GC是否會收集任務並清理其資源? – Noich