Подтвердить что ты не робот

Параллельно Для циклов. Они ждут окончания?

У меня есть два цикла. который второй цикл должен запускаться после завершения первого цикла.

Итак, если я использую два цикла Parallel.For(), будет ли второй цикл работать после завершения первого цикла?

4b9b3361

Ответ 1

Да. Parallel.For не будет возвращаться до завершения всех операций.

Если вы запустите

Parallel.For(0, 5, i => Console.WriteLine("First {0}", i));
Console.WriteLine("First Finished");
Parallel.For(0, 5, i => Console.WriteLine("Second {0}", i));
Console.WriteLine("Second Finished");

Выходной сигнал

First 0
First 2
First 1
First 4
First 3
First Finished
Second 0
Second 4
Second 3
Second 2
Second 1
Second Finished

Порядок целых чисел будет меняться, но второй всегда будет после первого.