import akka.actor.Actor
import akka.actor.ActorSystem
import akka.actor.Props
//类继承Actor并重写receive函数
//定义case 变量接收消息
case class T(val name:String ,val age:Int){}
class ActorDemo extends Actor {
override def receive={
case msg:String =>println(msg) //String类型
case i:Int => println(s"Int $i") //接收Int类型
case t:T => println(t.name,t.age) //接收对象
}
}
object ActorTest {
def main(args: Array[String]): Unit = {
//构造Actor环境
val sys = ActorSystem("Flag1") //主要用于跨机通信时的标记
//注册一个Actor
val a1rf = sys.actorOf(Props[ActorDemo])
//发送消息
a1rf ! "Hello world" //发送字符串类型的信息
a1rf ! 12 //发送Int类型的信息
a1rf ! T("zhangsan",19) //发送对象类型数据
}
}
运行结果