Я написал небольшую библиотеку для отправки простых HTTP-запросов ради интереса на основе асинхронного TcpClient.Я пошел на тесты и столкнулся с проблемой.Когда я запускаю около 200 задач для отправки запроса, программа отправляет и получает данные примерно через 30 секунд, после чего доступ в Интернет отключается и запросы останавливаются.
var tasks = new List<Task>();
for (int i = 0; i < 200; i++)
{
tasks.Add(Task.Run(async () =>
{
while (true)
{
var message = new GetHttpMessage("www.stackoverflow.com")
{
Headers = { {"User-agent","Test-agent-1"} }
};
var req = new Request(message);
var resp = await req.SendAsync();
}
}));
}
await Task.WhenAll(tasks);
Интернет полностью исчезает, браузер тоже не работает.Решив посмотреть на активность сети, я увидел, что в начале работы соединения активно появляются и исчезают, а во время остановки просто зависают в определенном состоянии.
Скриншотсетевой активности
Я пользуюсь роутером, может проблема в этом?