我正在学习C#.从我所知道的,你必须正确设置,使垃圾回收器实际上删除一切,因为它应该是.我在寻找智慧多年来所学的智慧.
我来自C背景,非常习惯于编码和开发模式.我想知道C#中的代码味道是什么样的.给我建议!
当你有“内存泄漏”的时候,你如何知道?
编辑:我正在努力开发一个“东西总是做内存管理”的打印列表
非常感谢.
解决方法
C#,.NET Framework使用托管内存和所有(但分配的非托管资源)是垃圾回收.
可以安全地假定管理类型总是垃圾回收.这包括数组,类和结构.随意做int [] stuff = new int [32];并忘记它.
如果打开文件,数据库连接或类中的任何其他非托管资源,请实现IDisposable接口,并在Dispose方法中取消分配非托管资源.
任何实现IDisposable的类都应该被明确的关闭,或者用于(我觉得很酷)
using (StreamReader reader = new StreamReader("myfile.txt")) { ... your code here }
这里.NET将在{}范围之外处理读者.