(あなたは本当に俳優言わなかったので、私はアッカの答えは、同様大丈夫ですと仮定しています)
がsender
方法はあなたに暗黙的または明示的に送信するサイトで拾ったActorRef
を与えます:アクター内で!
を使用すると、implicit val self: ActorRef
が見つかって使用されます。それは、リモートメッセージ送信、すなわち受信者とは異なるActorSystem
でその送信者の生活は、その後、sender
refは返信のために必要なすべての情報が含まれる場合は、単にそのパスを見て:
val s = sender // Actor[akka://<system>@<host>:<port>/user/path/to/actor]
val p = s.path // akka://<system>@<host>:<port>/user/path/to/actor
val a = p.address // akka://<system>@<host>:<port>
val host = a.host // Some(<host>), where <host> is the listen address as configured for the remote system
val port = a.port // Some(<port>), where <port> is the actual listen port of the remote system
だから、要するに、 sender.path.address.host
(およびポートのアナログ)は、必要なものを提供します。
IPアドレスがメッセージの一部である場合、それをメッセージに入れていいかもしれませんか? –