ステートフル シングルトンへの呼び出しを委任しているアクターがいます。シングルトンはオブジェクトのマップを維持しているため、ステートフルです。このシングルトン オブジェクトは、アクターと、このマップで 1 つのオブジェクトを取得するクラス (アクターではない) でのみ使用されます (スレッド セーフな読み取りのみ)。
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) }
副作用/問題はありますか? ありがとう