C#다중 스레드 Parallel에서 for continue,break와 유사한 방법
3720 단어 continue
Parallel Loop State 대상을 이용하여 Parallel을 제어합니다.For 함수 실행, ParallelLoopState 객체는 런타임 백그라운드에서 작성됩니다.
Parallel.For(1, 100, (i, ParallelLoopState) =>{...});
이 대상은 두 가지 함수가 있는데, Stop과 Break인데, 각각 Parallel을 제어할 수 있다.For의 실행
Parallel을 나타내는 Stop을 호출합니다.For의 실행은 다른 실행 단원이 정지 조건에 도달했는지 여부에 관계없이 즉시 정지됩니다.만약에 우리가 Break을 사용한다면 조건을 만족시키는 현재 실행 단원은 즉시 정지되고 다른 실행 단원의 경우 그 중에서 정지 조건을 만족시키는 것도 Break을 통해 정지되며 다른 정지 조건을 만족시키지 못한 것은 계속 집행되어 모두 집행이 끝나면 자연히 정지된다.모든 실행 장치가 정지되면 Parallel.For 함수가 실행을 중지하고 종료하지 않습니다.
break는 for의continue와 유사하지만,stop은 for의break와 유사합니다.
Parallel.For(1, 100, (i, ParallelLoopState) =>
{
// 30,
// ,
// Parallel.For
if (i > 30)
{
//
ParallelLoopState.Break();
return;// return, 。
}
});
Parallel.For(1, 100, (i, ParallelLoopState) =>
{
// 30,
// Parallel.For
if ( i > 30)
{
// Parallel.For
ParallelLoopState.Stop();
return;
}
});
Parallel.ForEach에서 ParallelLoopState 객체의 함수도 같은 방식으로 호출됩니다.
1 Parallel.ForEach(elements, (element, ParallelLoopState) =>
2 {
3 if (element == "")
4 {
5 ParallelLoopState.Break();
6 return;
7 }
8 });
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JS for 순환에서 break와continue를 사용하는 차이점에 대해 간단히 말하다1. For 순환 형식: 실행 순서: 1. 초기 문장 2, 실행 조건이 3, 순환체 4, 증가 초기화 문장은 순환이 시작되기 전에 한 번만 실행되며, 순환체를 실행할 때마다 조건에 부합되는지 판단하고, 순환 조건이t...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.