You are not calling the Disposeobject HttpWebResponse, which means that the connection is still lying. If you change your code to the following:
public static string isAlive(string url)
{
Console.WriteLine("start: Is Alive Test");
WebRequest request = WebRequest.Create(url);
try
{
using(HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
return Convert.ToString((int)response.StatusCode);
}
}
catch(WebException ex)
{
using(HttpWebResponse res = (HttpWebResponse)ex.Response)
{
return Convert.ToString((int)res.StatusCode);
}
}
}
The statement usingindirectly calls Dispose for you, which closes the connection.
, , , .Net , -, 2. System.Net.ServicePointManager.DefaultConnectionLimit, , .