斯卡拉 – 误会阿卡变得/不成熟
发布时间:2020-12-16 09:14:52 所属栏目:安全 来源:网络整理
导读:以下代码: class HotSwapActor extends Actor { import context._ def angry: PartialFunction[Any,Unit] = { case "foo" = sender ! "I am already angry!" case "bar" = become(happy) } def happy: PartialFunction[Any,Unit] = { case "bar" = sender !
以下代码:
class HotSwapActor extends Actor { import context._ def angry: PartialFunction[Any,Unit] = { case "foo" => sender ! "I am already angry!" case "bar" => become(happy) } def happy: PartialFunction[Any,Unit] = { case "bar" => sender ! "I am already happy :-)"; unbecome case "foo" => become(angry) } def receive = { case "foo" => become(angry) case "bar" => become(happy) } } class OtherActor extends Actor { val system = ActorSystem() val actor = system.actorOf(Props[HotSwapActor]) def receive = { case "start" => actor ! "foo" actor ! "bar" actor ! "bar" actor ! "foo" case a @ _ => println(a) } } object HotSwapMain extends App { val system = ActorSystem() val actor = system.actorOf(Props[OtherActor]) actor ! "start" } 有输出:
|