3

新しいアクター (ユーザーを表す) を既存の階層に動的に追加する scala akka ベースのシステムを作成しているため、特定のメッセージが階層内に新しいアクターを作成する必要があるかどうかを知る必要があります (まだ作成されていない場合)。存在する)かどうか。私が本当に欲しいのは、結果セット自体ではなく、結果セット内のアクターの数を返すactorSelectionのようなメソッドだと思います。

次のコードは、この名前のアクターが既に存在する場合に例外をスローします。

case u:UserAdded   => {
  context.actorOf(Props[HashActor],u.user.hash()) ! u
}
4

1 に答える 1

1

https://groups.google.com/forum/?fromgroups=#!topic/akka-user/jnv1CrdPKnsのおかげで、これは思ったよりずっと簡単だったと思います:

     case u:UserAdded =>
         val target = context.actorFor(u.user.hash) match {
           case noref if noref.isTerminated => context.actorOf(Props[HashActor], u.user.hash)    
           case ref => ref
         }
         target forward u
于 2012-11-17T15:32:41.220 に答える