Przyspiesz pętlę za pomocą wielowątkowości w C # (Pytanie)

Wyobraź sobie, że mam funkcję, która przechodzi przez milion / miliard ciągów i sprawdza w nich coś dobrego.

f.ex:

<code>foreach (String item in ListOfStrings)
{
    result.add(CalculateSmth(item));
}
</code>

zużywa dużo czasu, ponieważ CalculateSmth jest bardzo czasochłonną funkcją.

Chcę zapytać: jak zintegrować wielowątkowość w tym rodzaju procesu?

f.ex: Chcę odpalić 5 wątków, a każdy z nich zwraca niektóre wyniki, a to trwa, dopóki lista nie zawiera elementów.

Może ktoś może pokazać kilka przykładów lub artykułów ..

Zapomniałem wspomnieć, że potrzebuję go w .NET 2.0

questionAnswers(6)

yourAnswerToTheQuestion