मैं समवर्ती प्रोग्रामिंग के शेयर-नथिंग सिद्धांत के तहत काम कर रहा हूं। अनिवार्य रूप से, मेरे सभी कार्यकर्ता सूत्र के पास उसी राज्य की अपरिवर्तनीय केवल-पढ़ने योग्य प्रतियां हैं जो उनके बीच कभी भी साझा नहीं की जाती हैं ( संदर्भ द्वारा भी )। सामान्यतया, यह वास्तव में अच्छी तरह से काम किया है।
अब, किसी ने नो-लॉक सिंगलटन कैश ( जैसे एक स्थिर शब्दकोश ) पेश किया है, जो सभी थ्रेड्स समवर्ती रूप से एक्सेस कर रहे हैं। चूँकि स्टार्टअप के बाद डिक्शनरी में कभी भी बदलाव नहीं किया जाता है। कोई थ्रेड-सेफ्टी समस्या नहीं है, लेकिन अब एक प्रदर्शन गिरावट है।
सवाल यह है कि ... चूंकि ताले नहीं हैं, इसलिए इस सिंगलटन की शुरूआत एक प्रदर्शन को प्रभावित करती है? वास्तव में कवर के तहत क्या चल रहा है जो इसे समझा सकता है?
पुष्टि करने के लिए, इस नए सिंगलटन तक पहुंच केवल एकमात्र परिवर्तन है और मैं इसे कॉल को कैश करने के लिए टिप्पणी करके इसे मज़बूती से पुन: बना सकता हूं।