У меня есть параллель для цикла и список, который выглядит следующим образом:
var itemsList = new List<string> { "1","2","3","4","5","6","7","8","9","10","11" };
Parallel.For(0, 5000, ex=>
{
});
Что я хотел бы сделать здесь:
- Вынуть элементы из itemsList по одномуодин в точном порядке, как они есть в списке, независимо от того, как параллельная итерация вызывается случайным образом
Таким образом, в основном в первой случайной параллельной операции элемент со значением «1» будет храниться в первой переменной, как показано ниже:
var itemFromList = itemList.elementAt(0).Take(1);
Во второй итерации параллельного цикла foreach / for:
var itemFromList = itemList.elementAt(1).Take(1);
После того, как все 11 элементов из списка были использованы .. Я просто хотел бы повторить этот процессснова и снова.
Снова, если последний элемент, который был сохранен в переменной:
var itemFromList = itemList.elementAt(10).Take(1); // Last item
И затем снова используется первый элемент из списка:
var itemFromList = itemList.elementAt(0).Take(1);
Итерацияповторяется так до бесконечности.
Может ли кто-нибудь помочь мне с этим?