1
A
回答
2
有很多来源可以学习。
我希望你不要错过基础:由杰弗里里希特
- 通过C#第三版CLR
我想你大概GC细节去之前,试着去了解如何IDisposable
和资源管理处理:
- Dispose, Finalization, and Resource Management。它非常老,但仍然很棒。具体
GC:
- Garbage Collection/Fundamentals of Garbage Collection
- Maoni's WebLog(猫腻斯蒂芬斯是一个软件开发谁花了时间来实现.NET的GC其实,她一直以来的早期工作的GC。 .NET的天数)
- 视频:Maoni Stephens and Andrew Pardoe: CLR 4 Garbage Collector - Inside Background GC
- 视频:Erik Meijer and Patrick Dussud - Inside Garbage Collection
- Drill Into .NET Framework Internals to See How the CLR Creates Runtime Objects
- Identify And Prevent Memory Leaks In Managed Code
希望它可以帮助启动。
1
不是一本书,但我们的团队已经使用ANTS Memory Profiler,在追踪托管内存泄漏方面取得了相当不错的成功。他们的支持部分和附带的帮助将引导您完成跟踪不同类型内存问题的过程。这不包括关于GC类本身的细节,只是如何追踪常见错误(事件处理程序注销,静态变量等)。
1
也不是一本书,但体面的文章。 Memory Leak Detection in .NET
0
还有SciTech .NET Memory Profiler,我们的团队一直在成功使用。
1
有Rico Mariani的优秀文章:Tracking down managed memory leaks (how to find a GC leak)。我经常使用这种技术,很容易和高效。让自己熟悉像Windbg这样的真正调试器是一个额外的好处!
0
为了补充上述问题,在Channel9上与Maoni Stephens(微软CLR团队的首席开发人员)一起,介绍了GC的基本知识,开发人员应该注意的事项以及他们如何看待应该排除故障,并且可以使用一些工具。我找到了GC的工作原理和世代和根的概念真正有用的解释。
这里是一个3集系列的第一部分:
http://channel9.msdn.com/Shows/Defrag-Tools/Defrag-Tools-33-CLR-GC-Part-1
相关问题
- 1. 跟踪内存泄漏
- 2. 跟踪z3内存泄漏
- 3. 跟踪内存泄漏
- 4. Python内存泄漏跟踪?
- 5. COM C#内存泄漏跟踪
- 6. Android如何跟踪内存泄漏?
- 7. 如何跟踪COM内存泄漏
- 8. 使用node-memwatch跟踪内存泄漏?
- 9. 使用_crtBreakAlloc跟踪内存泄漏,_CRTDBG_MAP_ALLOC
- 10. 跟踪Outlook 2007中的内存泄漏
- 11. Android中的内存跟踪/泄漏
- 12. 跟踪valgrind内存泄漏的提示
- 13. 内存泄漏和GC根
- 14. 内存泄漏,跟踪时间长
- 15. 很难跟踪内存泄漏
- 16. 如何使用codeduitests跟踪内存泄漏?
- 17. 如何跟踪应用程序内存泄漏?
- 18. 如何在Android应用程序中跟踪内存泄漏
- 19. 如何跟踪和调试Firefox中的JavaScript内存泄漏?
- 20. 如何跟踪Java中的内存泄漏?
- 21. 无法跟踪Linux中的内存泄漏
- 22. C#内存泄漏,跟踪技术和工具
- 23. 如何跟踪有多少内存泄漏?
- 24. 如何追踪mod_perl内存泄漏?
- 25. 了解Python的gc.garbage(用于跟踪内存泄漏)的问题
- 26. 内存泄漏,由gc跟踪的对象大小远小于进程的内存使用量
- 27. 如何跟踪处理泄漏?
- 28. 跟踪连接泄漏
- 29. 内存泄漏C
- 30. C#内存泄漏?
这看起来像一个潜在的很好的资源,但存在连接异地的危险,在情况下,链接成为未来打破。通常,最好在你的回答中发布关联信息的摘要(尽管如果你链接到关于CLR GC的3部分系列,这可能会很困难) – 2014-06-05 00:23:37