आंतरिक ताले और तुल्यकालन
तुल्यकालन एक आंतरिक आंतरिक ताला रूप में जाना जाता इकाई के आसपास बनाया गया या लॉक की निगरानी कर रहा है। (एपीआई विनिर्देश अक्सर इस इकाई को "मॉनिटर" के रूप में संदर्भित करता है।) आंतरिक ताले सिंक्रनाइज़ेशन के दोनों पहलुओं में एक भूमिका निभाते हैं: किसी ऑब्जेक्ट के राज्य में विशेष पहुंच लागू करना और दृश्यता से पहले संबंधों को स्थापित करना।
प्रत्येक ऑब्जेक्ट में इसके साथ एक आंतरिक लॉक होता है। सम्मेलन के अनुसार, किसी थ्रेड को किसी ऑब्जेक्ट के फ़ील्ड में अनन्य और लगातार पहुंच की आवश्यकता होती है, उसे एक्सेस करने से पहले ऑब्जेक्ट के आंतरिक लॉक को प्राप्त करना होता है, और उसके बाद आंतरिक लॉक को तब जारी किया जाता है जब यह उनके साथ किया जाता है। एक धागा को लॉक हासिल करने के दौरान आंतरिक लॉक के मालिक होने के लिए कहा जाता है और लॉक जारी किया जाता है। जब तक एक थ्रेड एक आंतरिक लॉक का मालिक होता है, तब तक कोई अन्य धागा एक ही लॉक प्राप्त नहीं कर सकता है। जब यह ताला हासिल करने का प्रयास करता है तो दूसरा धागा अवरुद्ध होगा।
जब कोई थ्रेड एक आंतरिक लॉक जारी करता है, तो उस क्रिया के बीच एक पूर्व-संबंध संबंध स्थापित होता है और उसी लॉक के बाद के अधिग्रहण के बाद होता है।
ताले समन्वयित तरीके में
एक धागा एक तुल्यकालन विधि का आह्वान करते हैं, तो यह अपने आप उस विधि के वस्तु और विज्ञप्ति यह जब विधि रिटर्न के लिए आंतरिक ताला प्राप्त कर लेता है। लॉक रिलीज तब भी होता है जब वापसी एक अपवाद अपवाद के कारण हुई थी।
आपको आश्चर्य हो सकता है कि एक स्थिर सिंक्रनाइज़ विधि कब लागू की जाती है, क्योंकि एक स्थिर विधि कक्षा से जुड़ी होती है, न कि ऑब्जेक्ट। इस मामले में, धागे कक्षा से जुड़े कक्षा वस्तु के लिए आंतरिक लॉक प्राप्त करता है। इस प्रकार कक्षा के स्थैतिक क्षेत्रों तक पहुंच को लॉक द्वारा नियंत्रित किया जाता है जो कक्षा के किसी भी उदाहरण के लिए लॉक से अलग होता है।
स्रोत
2017-09-23 19:41:44
क्या आपने Google को आजमाया था? –