c#
에서를 사용한 병렬 비동기 연산
Parallel.ForEach
메소드를 사용할 때 문제가 발생합니다. async
.
<:>이 예를 고려하십시오 :
await
Parallel.ForEach
배경 스레드가 비동기 작업을 완료하기 전에 메인 스레드가 진행되므로 자주 0을 반환합니다.
Parallel.ForEach
가 포함됩니다.
이 접근법은 동시에 를 사용하여 비동기 연산을 시작한 다음 를 사용하여 .
고급 솔루션 :
보다 복잡한 시나리오의 경우, async
에 대한 Stephen Toub의 블로그 게시물은보다 정교하고 적응 가능한 솔루션을 제공합니다 :
https://www.php.cn/link/33edf41c0becd0d57c35c4e27276617b Task
async
Parallel.ForEach
메소드와 비교하여보다 강력하고 유연한 접근 방식을 제공합니다.
위 내용은 C#의 평행 한 루프 내에서 비동기 작동을 어떻게 제대로 기다릴 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!