C#에서 작업 병렬 처리는 작업을 나눕니다. 그런 다음 작업은 처리를 위해 별도의 스레드에 할당됩니다. .NET에는 코드를 병렬로 실행하기 위한 Thread, ThreadPool 및 Task와 같은 메커니즘이 있습니다. 병렬 처리를 위해 스레드 대신 C#의 작업을 사용하십시오.
작업은 자체 OS 스레드를 생성하지 않지만 TaskScheduler에 의해 실행됩니다.
작업을 만드는 방법을 살펴보겠습니다. 대리인을 사용하여 작업 시작 -
Task tsk = new Task(delegate { PrintMessage(); }); tsk.Start();
Task Factory를 사용하여 작업 시작 -
Task.Factory.StartNew(() => {Console.WriteLine("Welcome!"); });
당신은 또한 람다를 사용할 수 있습니다 -
Task tsk = new Task( () => PrintMessage() ); tsk.Start();
작업을 시작하는 가장 기본적인 방법은 run() −
를 사용하는 것입니다.예시
using System; using System.Threading.Tasks; public class Example { public static void Main() { Task tsk = Task.Run(() => { int a = 0; for (a = 0; a <= 1000; a++) {} Console.WriteLine("{0} loop iterations ends", a); }); tsk.Wait(); } }
출력
1001 loop iterations ends