में सिंगलेट का उपयोग करें मेरे पास एक अभिनेता है जो एक राज्य के सिंगलटन को कॉल का प्रतिनिधि दे रहा है। सिंगलटन राज्यपूर्ण है क्योंकि यह वस्तुओं का नक्शा बनाए रखता है। यह सिंगलटन ऑब्जेक्ट केवल अभिनेता में और एक वर्ग (अभिनेता नहीं) में उपयोग किया जाता है जहां मैं इस मानचित्र में एक ऑब्जेक्ट पुनर्प्राप्त कर रहा हूं (इसलिए केवल थ्रेड सुरक्षित पढ़ा जाता है)।अक्का स्काला अभिनेता
class MyActor extends Actor{
def receive()={
case ACase => singleton.amethod()
case BCase => singleton.bmethod()
}
}
val singleton = new MyActorLogic
class MyActorLogic{
val map:Map[String, Object] = Map()
def amethod()=//alter the map
def readMap(value:String) = map(value) }
क्या कोई दुष्प्रभाव/समस्या हो सकती है? धन्यवाद
मैंने अभिनेता में एक नक्शा डालने और अभिनेता से पूछताछ करने का संकल्प किया है। तो सिंगलटन को अभिनेता में शामिल किया गया है और कुछ भी बेनकाब नहीं करता है। मैं सोच रहा हूं कि अभिनेता और निर्भरता इंजेक्शन अच्छे दोस्त नहीं हैं। क्या मैं सही हू? – Matroska
डी ठीक काम करता है, हमारे पास वसंत-एकीकरण और एक गुइस-एकीकरण भी है। –
एक संक्षिप्त स्पष्टीकरण यह एक और अधिक उपयोगी जवाब देगा। प्रश्न में दृष्टिकोण का पालन न करने के पीछे तर्क क्या है? अभिनेता में मानचित्र या एजेंटों का उपयोग करके, यह कम क्यों है? – mahonya