C# में, टास्क समानांतरता कार्यों को विभाजित करती है। कार्य तब प्रसंस्करण के लिए अलग-अलग थ्रेड्स को आवंटित किए जाते हैं। .NET में, आपके पास समानांतर में कोड चलाने के लिए निम्नलिखित तंत्र हैं: Thread, ThreadPool, और Task। समानांतरता के लिए, C# में थ्रेड्स के बजाय टास्क का उपयोग करें।
एक टास्क अपना स्वयं का OS थ्रेड नहीं बनाता, जबकि वे TaskScheduler द्वारा निष्पादित होते हैं।
आइए देखें कि टास्क कैसे बनाएं। एक डेलीगेट का उपयोग करके टास्क शुरू करें:
Task tsk = new Task(delegate { PrintMessage(); });
tsk.Start();
टास्क फैक्टरी का उपयोग करके टास्क शुरू करें:
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} लूप पुनरावृत्तियाँ समाप्त", a);
});
tsk.Wait();
}
}
आउटपुट
1001 लूप पुनरावृत्तियाँ समाप्त