foreach 내부에서 업데이트되는 공통 변수는 카운터이므로 병렬 foreach 내부에 다음 카운터를 할당하고 싶습니다.평행 한 foreach에서 공통 변수가 증가 할 때 다음 값을 얻는 방법은 무엇입니까?
int myCommonCounter = 5;
Parallel.Foreach(myList, (iterator, state) =>
{
if(iterator.MyProperty == X)
{
iterator.Position = miCommonCounter;
miCommonCounter = miCommonCunter + 1;
}
});
내가 속성 iterator.Position 격차를 방지하고 너무 중복을 피하고 싶은 :
나는 그런 일이있다.
부분 결과의 합계가 for example in this documentation 인 예제를 보았지만 필자가 필요로하는 것과 같은 사례는 아닙니다.
병렬 foreach 내부에서 업데이트 할 때 간격을 두지 않고 중복을 피하기 위해 카운터를 업데이트해야하는지 알고 싶습니다.
감사합니다.
['Interlocked.Increment'] (https://docs.microsoft.com/dotnet의 경우 int로 캐스팅 할 수 있도록 긴의 유형 /api/system.threading.interlocked.increment) – PetSerAl