यदि जावा में चर कई धागे से एक्सेस किए जाते हैं, तो किसी को यह सुनिश्चित करना होगा कि वे सुरक्षित रूप से प्रकाशित हों। इसका आमतौर पर synchronized
या volatile
का उपयोग करना है।जावा मल्टीथ्रेडिंग दृश्यता समस्याओं का प्रदर्शन कैसे करें?
मुझे यह धारणा मिली है कि मेरे कुछ सहयोगी इस मुद्दे को गंभीरता से नहीं लेते हैं, क्योंकि उन्होंने "कभी भी volatile
के बारे में कभी नहीं सुना है और उनके कार्यक्रमों ने वर्षों से काम किया है"।
तो मेरे सवाल है:
कोई एक उदाहरण जावा प्रोग्राम/टुकड़ा प्रदान कर सकते हैं, कि मज़बूती से डेटा दृश्यता समस्याओं को दर्शाता है।
मुझे लगता है कि एक प्रोग्राम चला रहा है और अप्रत्याशित एनपीई या स्टेल वेरिएबल वैल्यू देखकर सैद्धांतिक स्पष्टीकरण की तुलना में अधिक मदद मिलेगी, जिसे प्रदर्शित नहीं किया जा सकता है।
आपकी मदद के लिए बहुत बहुत धन्यवाद!
अद्यतन: बस बिंदु पर जोर देने के लिए। मैंने प्रैक्टिस में जावा कंसूर्रेनी पढ़ी है और उदाहरणों को जानते हैं कि सैद्धांतिक रूप से में दृश्यता समस्याएं हैं। जो मैं खोज रहा हूं वह वास्तव में प्रदर्शित करने का एक तरीका है। मुझे यकीन नहीं है कि यह वास्तव में संभव है, लेकिन शायद एक जेवीएम कॉन्फ़िगरेशन या ऐसा कुछ ऐसा है जो इसे अनुमति देता है।