Dot NET 内存泄漏

托管代码中的内存泄漏

因为正好解决了手头一个泄漏的问题,正好做个总结。一开始我认为托管代码是不存在泄漏问题的(不使用指针,不操作unsafe的代码) 我想跟我这样想的人应该不少,呵呵。

传统的内存泄漏主要是因为使用后没有释放造成的(维基解释http://en.wikipedia.org/wiki/Memory_leak),而在托管平台下内存的回收是由gc完成,所以托管中出现内存泄漏一般都是因为gc无法分辨对象是否可以被回收造成的,而最常见的就是循环引用,另外委托也是重灾区,4.0中引入的task也成为新的增长点(插播新闻http://news.cnblogs.com/n/124603/)。
(插播新闻:

在我的代码中大量使用了task,造成泄漏是因为我使用了TaskCreationOptions.AttachedToParent,它会保持引用关系而不被回收。


本文转自today4king博客园博客,原文链接:http://www.cnblogs.com/jinzhao/archive/2012/04/01/2428546.html,如需转载请自行联系原作者

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值