मुझे पता है कि आप लॉक का उपयोग कर किसी ऑब्जेक्ट को सी # में लॉक कर सकते हैं, लेकिन क्या आप लॉक छोड़ सकते हैं और आपको यह सूचित करने के लिए कुछ और इंतजार कर सकते हैं कि यह बदल गया है जैसे आप जावा में प्रतीक्षा कर सकते हैं और सूचित कर सकते हैं?सी # जावा के इंतजार के बराबर और सूचित करें?
ऐसा लगता है कि क्रमशः जावा और सी # में सिंक्रनाइज़ और लॉक समानार्थी हैं।
जावा एपीआई से: प्रतीक्षा करें() - मौजूदा थ्रेड का इंतजार तब तक प्रतीक्षा करें जब तक कि कोई अन्य धागा इस ऑब्जेक्ट के लिए अधिसूचना() विधि या अधिसूचना सभी() विधि को आमंत्रित न करे। आपका ट्यूटोरियल यह कह रहा है कि Monitor.Wait() केवल तभी प्रतीक्षा करता है जब कोई अन्य थ्रेड लॉक के लिए संघर्ष कर रहा हो। –
@ebyrob: यह कहां सुझाता है? –
ओह क्षमा करें, यह एमएसडीएन आलेख था जो मुझे भ्रमित करता था: http://msdn.microsoft.com/en-us/library/system.threading.monitor.wait%28v=vs.71%29.aspx यह कहता है "//रुको, अगर कतार व्यस्त है। कॉल करने से पहले: Monitor.Wait (m_smplQueue); " मैं एक ही समय में दोनों पढ़ रहा था और किसके बारे में भ्रमित हो गया। –