1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > C#程序出现内存溢出错误的解决办法

C#程序出现内存溢出错误的解决办法

时间:2018-08-11 16:17:57

相关推荐

C#程序出现内存溢出错误的解决办法

上周一个C#开发的站点出现了内存溢出错误:“引发类型为“System.OutOfMemoryException”的异常”

因为页面众多一时最初难以确定问题源,找了很久才发现了导致内存溢出的代码。把这次的方法总结一下。

症状:每个一段时间才会出现内存溢出的错误,服务器上会出现大量的页面请求被堵塞。回收iis程序池后,会短暂正常,但是过一段时间后又出现内存溢出,时间间隔长短不一,没有规律。

解决步骤:1,判断是某个页面被请求到时引发的内存溢出错误。

2,寻找有问题的页面

存在内存溢出错误代码的页面,当被请求时,应该不会被执行结束。

所以,通过OnPreInit方法,在所有页面被请求时,将该页面的地址,请求时间记录到数据库中。每次请求都会在数据库中增加一条记录。

在页面执行到OnUnload方法时,再将该页面的总执行时间更新到上面提到的请求记录中。(新增时,总执行时间默认为-1)

通过上述方式,分析几次内存溢出发生时,没有被执行结束的页面。最终确定的问题页面所在,修改代码上传后,内存溢出问题解决。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。