Tôi có một vòng lặp không đồng bộ Parallel.ForEach() mà tôi tải xuống một số trang web. Băng thông của tôi bị giới hạn vì vậy tôi chỉ có thể tải xuống x trang mỗi lần nhưng Parallel.ForEach thực hiện toàn bộ danh sách các trang web mong muốn.Tôi làm cách nào để giới hạn Parallel.ForEach?
Có cách nào để giới hạn số chuỗi hoặc bất kỳ giới hạn nào khác trong khi chạy Parallel.ForEach không?
đang Demo:
Parallel.ForEach(listOfWebpages, webpage => {
Download(webpage);
});
Nhiệm vụ thật không có gì để làm với các trang web, vì vậy giải pháp crawl web quảng cáo sẽ không giúp đỡ.
Tôi thấy bạn đang thực hiện một Parallel.ForEach() trên một danh sách - Tôi quá thích sống nguy hiểm. – jKlaus
@jKlaus Nếu danh sách không được sửa đổi, ví dụ: nó chỉ là một tập hợp các URL, tôi thực sự không thể thấy được vấn đề? – Shiv
@Shiv, cho đủ thời gian bạn sẽ ... Đếm số lần thực hiện của bạn và so sánh nó với số lượng danh sách. – jKlaus