Это первый раз, когда я пытаюсь использовать цикл «Parallel.ForEach», чтобы посмотреть, смогу ли я улучшить производительность, используя много ядер в системе.Я попытался взглянуть на MSDN и другие примеры, но не могу найти способ передачи в 3 списка, как показано ниже.
Как можно заменить этот цикл на цикл Parallel.ForEach?Я думаю, что ищу основы того, как пройти во все эти 3 списка, чтобы я мог работать с ними в цикле Parallel.ForEach?
Спасибо!
List<double> nums = new List<double> { 0.0005, 0.00035, 0.00205 };
List<double> list1 = new List<double>();
List<double> list2 = new List<double>();
List<double> list3 = new List<double>(); Random random = new Random(); double calc1 = 0;
List<double> resultLIST = new List<double>();
for (int i = 0; i < 4000000; i++)
{
list1.Add(nums[random.Next(0, 7)]);
list2.Add(nums[random.Next(0, 7)]);
list3.Add(nums[random.Next(0, 7)]);
}
//How can the below loop be replaced with a: Parallel.ForEach loop?
for (int i = 0; i < list1.Count; i++)
{
calc1 = list1[i] * list2[i] * list3[i];
resultLIST.Add(calc1);
}
//Now sort the list
resultLIST.Sort();
//Here I will write "resultLIST" to a .txt file