작업을 통한 동시성 관리: 동시 실행 제한
귀하의 시나리오에서는 100개의 작업 세트를 동시에 실행하는 것을 목표로 하지만 주어진 시간에 최대 10개의 작업을 실행할 수 있습니다. 여기에는 적절한 작업 실행 및 리소스 활용을 보장하기 위한 동시성을 효과적으로 관리하는 것이 포함됩니다.
작업을 사용하여 이 요구 사항을 해결하려면 다음 접근 방식을 사용할 수 있습니다.
// Define a SemaphoreSlim to limit concurrent tasks to 10 SemaphoreSlim maxThread = new SemaphoreSlim(10); // Iterate through the tasks for (int i = 0; i < 115; i++) { // Wait for the SemaphoreSlim to allow a new task to execute maxThread.Wait(); // Create a new task and schedule it Task.Factory.StartNew(() => { // Perform the task's operation }, TaskCreationOptions.LongRunning) // Release the SemaphoreSlim when the task completes .ContinueWith((task) => maxThread.Release()); }
이 구현에서:
이 접근 방식은 주어진 순간에 10개의 작업만 실행되도록 보장하여 동시성을 효과적으로 관리하고 리소스를 방지합니다. 배고픔.
위 내용은 C# 작업을 사용하여 동시 작업 실행을 10으로 제한하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!