scala的tcp通信
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了scala的tcp通信相关的知识,希望对你有一定的参考价值。
client:
object ActorClient extends App { import actors.Actor, actors.remote.Node, actors.remote.RemoteActor Actor.actor { // 取得一个节点(ip:port 唯一标识一个节点) // Node 是个 case class,所以不需要 new val node = Node("127.0.0.1", 3000) // 取得节点对应的 actor 代理对象 val remoteActor = RemoteActor.select(node, ‘server1) // 现在 remoteActor 就和普通的 actor 一样,可以向它发送消息了! println("-- begin to send message") remoteActor ! "ActorClient的消息" println("-- end") } }
server:
object ActorServer extends App { import actors.Actor, actors.Actor._, actors.remote.RemoteActor Actor.actor { // 创建并启动一个 actor // 当前 actor 监听的端口: 3000 RemoteActor.alive(3000) // 在 3000 端口注册本 actor,取名为 server1。 // 第一个参数为 actor 的标识,它以单引号开头,是 Scala 中的 Symbol 量, // Symbol 量和字符串相似,但 Symbol 相等是基于字符串比较的。 // self 指代当前 actor (注意此处不能用 this) RemoteActor.register(‘server1, Actor.self) // 收到消息后的响应 loop { Actor.react { case msg => println("server1 get: " + msg) } } } }
以上是关于scala的tcp通信的主要内容,如果未能解决你的问题,请参考以下文章