プールには複数の俳優がいます。私はこれらの俳優のそれぞれが俳優を創造したいと思っています。問題は、子アクターを作成して参照を保存するときに、プールされたアクターが送信するメッセージをどの子が受け取るのかわからないことです。プールは、smallestMailBoxプールとして作成されました。私はプールされた俳優のコンストラクタで :プールされたAKKAアクタは、自分の子アクタからの送受信のみを保証するにはどうすればよいですか?
documentReaderActor = this.getContext().actorOf(Props.create(DocumentReaderActor.class));
これは、子どものです。 私はいくつかのパターンを行います。マスクといくつかのことを言いますが、それらは同じ子供に終わらない。 まず、私はない:私はすべて私が送って行っていた場合(adReceiveとadSendがAkkaDocumentクラスオブジェクトです)
Future<Object> future = Patterns.ask(documentReaderActor, adSend,
timeout);
adReceive = (AkkaDocument) Await.result(future, timeout.duration());
を::
documentReaderActor.tell(startReading, getSelf());
後、私は何度も行う
documentReaderActor.tell(documentDone, getSelf());
私はこれらのプールされたアクタのそれぞれが子アクタを作成していますが、毎回同じ子供に行く。プールされた俳優が子どもと話すだけであることをどうすれば保証できますか?
あなたが何を求めているのかよく分かりません。あなたが俳優a、b、cを持っていて、それぞれが正確に1人の子供を持っているならば、a、b、c 'はaと、bはbと、cはcと話します。 –
しかし、彼らはしません。私は俳優Aからメッセージを送ると、それは子供Bに現れるかもしれないことがわかります。これは、特に最後のメッセージで起こるように見えますが、時には他のメッセージでも起こるようです。 – Pat
私は実際に右の俳優のメッセージを受け取ります。スレッドは変更されましたが、俳優は変更されませんでした。これは私が調べなければならない問題を引き起こす。 – Pat