首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

,关于死循环里异步调用导致内存溢出的有关问题

2012-05-28 
求救,关于死循环里异步调用导致内存溢出的问题HttpListener listener new HttpListener()listener.Pref

求救,关于死循环里异步调用导致内存溢出的问题
HttpListener listener = new HttpListener();
listener.Prefixes.Add("http://" + ipAddress + ":" + ipPort + "/");
listener.Start(); 
AsyncCallback ac = new AsyncCallback(process);
while (true)
{
if (listener.IsListening)
listener.BeginGetContext(ac, listener);
Thread.Sleep(10);
}

开始以为process方法中释放的问题,最后屏蔽掉process里面的内容,啥都不做。还是内存不断的累加,最后溢出。

而我屏蔽掉listener.BeginGetContext(ac, listener);则内存不累加。

[解决办法]
process中做了什么,有没有EndGetContext
[解决办法]
应该是IAsyncResult ar一直累加引起的吧

热点排行