सिंक्रोनाइज़ेशन का उपयोग करके, आप मल्टीथ्रेडेड एप्लिकेशन में संसाधनों तक पहुंच को सिंक्रनाइज़ कर सकते हैं।
प्रक्रियाओं में धागे को सिंक्रनाइज़ करने के लिए एक म्यूटेक्स का उपयोग किया जा सकता है। एक समय में एक से अधिक थ्रेड द्वारा कोड के ब्लॉक के एक साथ निष्पादन को रोकने के लिए इसका उपयोग करें।
C# लॉक स्टेटमेंट का उपयोग यह सुनिश्चित करने के लिए किया जाता है कि कोड का एक ब्लॉक अन्य थ्रेड्स द्वारा बिना किसी रुकावट के चलता है। किसी दिए गए ऑब्जेक्ट के लिए कोड ब्लॉक की अवधि के लिए एक पारस्परिक-बहिष्करण लॉक प्राप्त किया जाता है।
सी # में थ्रेड पूल धागे का संग्रह है। इसका उपयोग बैकग्राउंड में कार्य करने के लिए किया जाता है। जब कोई थ्रेड किसी कार्य को पूरा करता है, तो उसे उस कतार में भेजा जाता है जिसमें सभी प्रतीक्षारत थ्रेड मौजूद होते हैं। ऐसा इसलिए किया जाता है ताकि इसका दोबारा इस्तेमाल किया जा सके।
आइए देखें कि थ्रेड पूल कैसे बनाया जाता है।
सबसे पहले, निम्न नाम स्थान का उपयोग करें -
using System.Threading;
अब, थ्रेडपूल ऑब्जेक्ट का उपयोग करके थ्रेडपूल क्लास को कॉल करें। QueueUserWorkItem विधि को कॉल करें।
ThreadPool.QueueUserWorkItem(new WaitCallback(Run));