WinForms में, आपके पास Control.BeginInvoke()
है, जिसका अर्थ है कि आप पृष्ठभूमि थ्रेड से मुख्य UI थ्रेड पर कॉल को मार्शल कर सकते हैं जिसने नियंत्रण के हैंडल को बनाया है।मार्शल मैन्युअल रूप से
यह ठीक है, लेकिन कैसे (सी # में) आप दो "मानक" धागे के बीच ऐसा करेंगे?
मैंने एक सेवा बस लिखी है, जिसमें संदेशों का उपभोग करने के लिए प्रोसेसर थ्रेड है। मैं टाइमर को आग लगाना चाहता हूं, जो कि प्रोसेसर थ्रेड को टाइमर के धागे में चल रहे कोड के बजाए कुछ करने का कारण बनता है।
बेशक मैं थ्रेड सिंक्रनाइज़ेशन (Monitor
/using() {...}
) का उपयोग कर सकता हूं लेकिन आश्चर्य हुआ कि यह सामान्य रूप से कैसे किया जाता था।
सिंक्रनाइज़ेशन कॉन्टेक्स्ट वह उत्तर था जिसे मैं ढूंढ रहा था - धन्यवाद! –