2

以下のコードを実行しようとすると:

ActorRef parserActor1 =system.actorFor("akka://ParserActorsSystem@10.0.0.9:2552/user/ParserMainActor");
System.out.println("*$^%$^%$^"+parserActor1);   
parserActor1.tell("Please parse!", mainActor);

1 行目と 2 行目はうまく機能しています。これは、リモーティングが正常に機能していることを意味します (私はそう思います)。3行目で、「メッセージ送信中に例外を飲み込んでいます」というエラーが表示されます。

akka-remote バージョン 2.1.1 を使用しています。何が問題なのですか?

application.conf には以下が含まれます。

    akka {
  actor {
    provider = "akka.remote.RemoteActorRefProvider"
  }
  remote {
    transport = "akka.remote.netty.NettyRemoteTransport"
    netty {
      hostname = "10.0.0.8"
      port = 2552
    }
 }
}

これは正確なエラーです: "[エラー] [03/06/2013 16:15:42.129] [新しい I/O ワーカー #1] [akka://ParserActorsSystem@10.0.0.9:2552/user/ParserMainActor] 飲み込み例外メッセージ送信中に java.lang.IllegalStateException: await*() が I/O スレッドで発生すると、デッドロックまたは突然のパフォーマンス低下が発生します。代わりに addListener() を使用するか、別のスレッドから await*() を呼び出してください。

どうもありがとう、アビアド

4

1 に答える 1

2

Akka のリモート処理と協力して Play によって公開されている Netty の癖にぶつかっています

于 2013-03-07T08:24:55.947 に答える