C#中怎么使用Parallel.For和Parallel.ForEach

c#
小億
174
2023-10-24 10:24:31

在C#中,可以使用Parallel.For和Parallel.ForEach來(lái)實(shí)現(xiàn)并行循環(huán)。這兩個(gè)方法都是.NET Framework中提供的并行編程庫(kù)中的一部分。
Parallel.For方法用于并行執(zhí)行一個(gè)for循環(huán),語(yǔ)法如下:
```csharp
Parallel.For(startIndex, endIndex, (index) =>
{
   // 循環(huán)體邏輯
});
```
其中,startIndex是起始索引,endIndex是結(jié)束索引,index是當(dāng)前迭代的索引。在循環(huán)體邏輯中,可以根據(jù)index執(zhí)行相應(yīng)的操作。
下面是一個(gè)使用Parallel.For的示例代碼:
```csharp
Parallel.For(0, 10, (i) =>
{
   Console.WriteLine("當(dāng)前索引:{0}", i);
});
```
Parallel.ForEach方法用于并行迭代一個(gè)集合,語(yǔ)法如下:
```csharp
Parallel.ForEach(collection, (item) =>
{
   // 迭代體邏輯
});
```
其中,collection是要迭代的集合,item是當(dāng)前迭代的元素。在迭代體邏輯中,可以根據(jù)item執(zhí)行相應(yīng)的操作。

0