2011-04-22 47 views
1

我有一個很大的C#服務器應用程序,我很想了解GC類是如何工作的,特別是我應該採取什麼行動來確定可能的內存來源泄漏。C#GC的用法以及如何跟蹤內存泄漏

有沒有關於這個主題的書籍,還是不是真的精心設計?

回答

2

有很多來源可以學習。

我希望你不要錯過基礎:由傑弗裏裏希特

  • 通過C#第三版CLR

我想你大概GC細節去之前,試着去了解如何IDisposable和資源管理處理:

GC:

希望它可以幫助啓動。

1

不是一本書,但我們的團隊已經使用ANTS Memory Profiler,在追蹤託管內存泄漏方面取得了相當不錯的成功。他們的支持部分和附帶的幫助將引導您完成跟蹤不同類型內存問題的過程。這不包括關於GC類本身的細節,只是如何追蹤常見錯誤(事件處理程序註銷,靜態變量等)。

0

爲了補充上述問題,在Channel9上與Maoni Stephens(微軟CLR團隊的首席開發人員)一起,介紹了GC的基本知識,開發人員應該注意的事項以及他們如何看待應該排除故障,並且可以使用一些工具。我找到了GC的工作原理和世代和根的概念真正有用的解釋。

這裏是一個3集系列的第一部分:

http://channel9.msdn.com/Shows/Defrag-Tools/Defrag-Tools-33-CLR-GC-Part-1

+1

這看起來像一個潛在的很好的資源,但存在連接異地的危險,在情況下,鏈接成爲未來打破。通常,最好在你的回答中發佈關聯信息的摘要(儘管如果你鏈接到關於CLR GC的3部分系列,這可能會很困難) – 2014-06-05 00:23:37