Note that there are some explanatory texts on larger screens.

plurals
  1. POWebRequest/WebResponse Memory leak
    text
    copied!<p>I have an .Net Framework #4.0 application that makes a large number of web requests using the WebRequest/WebResponse classes , as i see it has memory leak (or maybe i am doing something wrong) I Wrote some small simple application that demonstrates this:</p> <pre><code>class Program { public static void Main(string[] args) { while(true) { var webRequest = (HttpWebRequest)WebRequest.Create("http://www.gooogle.com"); Init(webRequest); using (var webResponse = (HttpWebResponse)webRequest.GetResponse()) { var responseStream = webResponse.GetResponseStream(); responseStream.ReadTimeout = 30; var streamReader = new StreamReader(responseStream, Encoding.UTF8); var page = streamReader.ReadToEnd(); streamReader.Close(); streamReader.Dispose(); responseStream.Close(); responseStream.Dispose(); webResponse.Close(); Console.WriteLine("Done"); //GC.Collect(); } } } private static void Init (HttpWebRequest webRequest) { webRequest.Method = "GET"; webRequest.Host = "www.gooogle.com"; webRequest.UserAgent = "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; GTB6.5; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; OfficeLiveConnector.1.4; OfficeLivePatch.1.3; .NET4.0C; .NET4.0E; InfoPath.3) chromeframe/5.0.375.62"; webRequest.Accept = "application/x-ms-application, image/jpeg, application/xaml+xml, image/gif, image/pjpeg, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*"; webRequest.KeepAlive = true; } } </code></pre> <p>The only one solution i came up with is use GC.Collect() (unmarked in example) , All the object are disposed , all streams are closed , am I missing something ?</p> <p>I found something but i don't understand the reason , if i minimize Console the memory usage decreases and looks O.K , what can be the reason for that is there a problem with Conosole or WinForm , how can i fix it ? </p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload