Как ограничить количество одновременных асинхронных операций ввода -вывода?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Как ограничить количество одновременных асинхронных операций ввода -вывода?

Сообщение Anonymous »

// let's say there is a list of 1000+ URLs
string[] urls = { "http://google.com", "http://yahoo.com", ... };

// now let's send HTTP requests to each of these URLs in parallel
urls.AsParallel().ForAll(async (url) => {
var client = new HttpClient();
var html = await client.GetStringAsync(url);
});
< /code>

Вот проблема, она начинает 1000+ одновременных веб -запросов. Есть ли простой способ ограничить одновременную сумму этих асинхронных HTTP -запросов? Так что не более 20 веб -страниц загружаются в любой момент времени. Как сделать это наиболее эффективным образом?

Подробнее здесь: https://stackoverflow.com/questions/108 ... operations
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»