呼び出します!あるアクターから別のワーカーアクターへのメソッドは、呼び出し元が応答を受信した後でもチャネルを開いたままにしているように見えます(つまり、futureの準備ができています)。
たとえば、!!を使用します。あるアクターから別のワーカーアクターに11の異なるメッセージを送信すると、元の呼び出し元のメールボックスに次のような11のメッセージが表示され、それぞれのChannel@xxxx値が異なります。
!(scala.actors.Channel@11b456f,Exit(com.test.app.actor.QueryActor@4f7bc2、'normal))
これらのメッセージは、元の呼び出し元がexit()への独自の呼び出しでExitメッセージを送信しているため、ワーカーからの応答を待っていますか、それとももう一方の端で生成され、何らかの理由で上記の印刷フォームがありますか?この時点で、ワーカーアクターはすでに終了しているため、元の呼び出し元は!! 絶対に返信を受け取ることはありません。
元の呼び出し側アクターのメールボックスがこれらの終了メッセージでいっぱいになるため、この動作は望ましくありません(!!が使用されるたびに作成されたチャネルごとに1つ)。
どうすればこれを止めることができますか?元の発信者は、それぞれに作成された応答チャネルに自動的に「リンク」していますか?電話?