为了账号安全,请及时绑定邮箱和手机立即绑定

寻找 内存泄漏的解决办法

寻找 内存泄漏的解决办法

四季花海 2018-12-25 14:10:54
最近发现写得一个服务程序,内存泄露,使得程序不能够7*18小时的运行(晚上0-6点)。 为了解决这个问题,想到了3个办法,请 各位老大帮忙说下可行性:1:把所有的类都继承IDispose(),并实现资源释放,所有创建的对象都及时设置为null(这个不太能够实现,业务代码很多,使用的线程,事件等等很多,不太可能逐行的查看代码)2:在写个服务程序,定时重启服务。(这个虽然能够重启服务,但是,占用的内存好像还是不能够一下子释放完)3:修改原有服务程序,把原有服务程序 的业务代码等,全部放到一个AppDomain里面,定时检查这个AppDomain,并自动释放和创建。(不知道这个方法可以不 ,跪求这样的代码)  也跪求工具,用来查看内存被那些线程,对象等占用。。。问题补充: 程序没有递归,同时,也没有调用非托管组件,也没有静态字段。。。 就是线程比较多。。。但是,线程也没有被阻塞的情况。。。。 程序里面,事件用的比较多。。。 主要是 有的地方,事件的 -= 不太能够实现。。。 看来,个人感觉,可以用 AppDomain来加载业务代码,然后,可以在一定的时间后,卸载 AppDomain,然后再创建一个,但是,不知道 主要做是不是可以,同时,没有这样的代码,呵呵,所以,希望大家能够帮忙提供一下。。。。 当然,我也知道最好的办法是把梳理一下程序流程,并释放对象等,但是,由于时间紧,不太好一下完成这工作量 现在程序每天内存占用增加30M左右。。。。。。
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 629 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信