Mam listę numerów kont. Numer konta Foreach Muszę zadzwonić do metody ProcessAccount
. Przetworzy się około 150 000 kont, a przetworzenie każdego konta może potrwać od 0,5 do 2 sekund.Łatwy sposób na przetwarzanie kolejki z N wątków w C#?
Chciałbym ustawić wątki w jakiś sposób, dzięki czemu mogę przetwarzać na przykład 4 konta na raz.
Czy istnieje prosty wzór, którego mogę użyć w tym celu?
Co mogę zrobić, to rozpocząć 4 wątki przetwarzające pierwsze 4 konta, a następnie, po zakończeniu każdego pojedynczego wątku, rozpocznij kolejny wątek z następnym kontem, aż wszystkie konta zostaną przetworzone.
FYI - To najprawdopodobniej zostanie uruchomiony z aplikacji konsoli. – AWeim
Jaka jest zależność od 'ProcessAccount'? Czy jest to operacja związana z obliczeniami, czy operacja związana I/O? –
Bryan ma dobry punkt, wspominasz listę, czy to jest lista? Jeśli chcesz odczytać dane z dysku lub zadzwonić do usług zdalnych lub coś jest bardzo różne, niż wtedy, gdy masz wszystkie potrzebne dane gotowe do użycia w pamięci. Aby przyspieszyć działanie, najpierw musisz zidentyfikować wąskie gardło. –
gjvdkamp