码迷,mamicode.com
首页 > 其他好文 > 详细

akka实现的actor

时间:2015-06-23 17:42:38      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:

定义一个 Actor 类

要定义自己的Actor类,需要继承 Actor 并实现receive 方法.

receive 方法需要定义一系列 case 语句(类型为 PartialFunction[Any, Unit]) 来描述你的Actor能够处理哪些消息,以及如何进行处理。

如下例:

  1. import akka.actor.Actor
  2. import akka.actor.Props
  3. import akka.event.Logging
  4.  
  5. class MyActor extends Actor {
  6. val log = Logging(context.system, this)
  7. def receive = {
  8. case "test" log.info("received test")
  9. case _ log.info("received unknown message")
  10. }
  11. }

需要提供一个接受的所有消息的模式匹配规则,如果你希望处理未知的消息,你需要象上例一样提供一个缺省的case分支。否则会有一个 akka.actor.UnhandledMessage(message, sender, recipient) 被发布到 Actor系统(ActorSystem)‘的 事件流(EventStream)中。

akka实现的actor

标签:

原文地址:http://www.cnblogs.com/wlwgcdxc/p/4595727.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!