Привет, я прочитал эту статью Вы неправильно используете HttpClient и дестабилизируете свое программное обеспечение, статья предлагает эти 2
- Сделайте свой HttpClient статическим
- Не удаляйте и не обертывайте свой HttpClient при использовании, если вы явно не ищете какое-либо конкретное поведение (например, чтобы ваши службы терпят неудачу)
теперь новичок на С#, как я, просто последует за ним, как в коде, опубликованном в этой статье, здесь находится исходный код, который, по его словам, приведет к сбою приложения.
using System;
using System.Net.Http;
namespace ConsoleApplication
{
public class Program
{
public static void Main(string[] args)
{
Console.WriteLine("Starting connections");
for(int i = 0; i<10; i++)
{
using(var client = new HttpClient())
{
var result = client.GetAsync("http://aspnetmonsters.com").Result;
Console.WriteLine(result.StatusCode);
}
}
Console.WriteLine("Connections done");
}
}
}
и исправить это он дал этот код:
using System;
using System.Net.Http;
namespace ConsoleApplication
{
public class Program
{
private static HttpClient Client = new HttpClient();
public static void Main(string[] args)
{
Console.WriteLine("Starting connections");
for(int i = 0; i<10; i++)
{
var result = Client.GetAsync("http://aspnetmonsters.com").Result;
Console.WriteLine(result.StatusCode);
}
Console.WriteLine("Connections done");
Console.ReadLine();
}
}
}
теперь любопытно, как любой новичок, которого я думал о цикле for внутри оператора using, будет ли эффект таким же, как последний?
Благодарю вас