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