Ich habe eine Parallel.ForEach() async-Schleife, mit der ich einige Webseiten herunterlade. Meine Bandbreite ist begrenzt, sodass ich nur x Seiten pro Zeit herunterladen kann, aber Parallel.ForEach führt die gesamte Liste der gewünschten Webseiten aus.
Gibt es eine Möglichkeit, die Anzahl der Threads oder einen anderen Begrenzer zu begrenzen, während Parallel.ForEach ausgeführt wird?
Demo-Code:
Parallel.ForEach(listOfWebpages, webpage => {
Download(webpage);
});
Die eigentliche Aufgabe hat nichts mit Webseiten zu tun, so dass kreative Web-Crawling-Lösungen nicht helfen werden.