我想通过 TCP 发送文本消息。相当容易。我想用akka这样做。我读了这篇关于 akka IO 的文章:http: //doc.akka.io/docs/akka/snapshot/scala/io-tcp.html
这篇文章介绍了一个 TCP 客户端的简单实现,但我不清楚我将如何使用这个客户端。
构造函数接受一个 InetSocketAddress 和一个 ActorRef。InetSocketAddress 是有道理的(我假设这是目的地)但是 ActorRef 是什么?这是我第一次使用akka,但据我了解,ActorRef 是另一个演员的参考。由于我的 TCP 客户端是一个参与者,并且我希望这个 TCP 参与者与 TCP 服务器通信,而不是与另一个参与者通信,我为什么要给它一个参与者参考?
伴生对象中的道具功能是什么?
一旦实例化,我将如何使用这个演员来发送 TCP 消息?我应该只向它发送一条消息,其中包含我想以 ByteString 形式发送的数据吗?
4. 有什么联系/区别
case Received(data) =>
listener ! data
和
case data: ByteString =>
connection ! Write(data)