J'ai une boucle asynchrone Parallel.ForEach () avec laquelle je télécharge des pages Web. Ma bande passante est limitée, je ne peux donc télécharger que x pages à la fois, mais Parallel.ForEach exécute toute la liste des pages Web souhaitées.
Existe-t-il un moyen de limiter le nombre de threads ou tout autre limiteur lors de l'exécution de Parallel.ForEach?
Code de démonstration:
Parallel.ForEach(listOfWebpages, webpage => {
Download(webpage);
});
La vraie tâche n'a rien à voir avec les pages Web, donc les solutions créatives d'exploration de sites Web n'aideront pas.