【发布时间】:2012-12-28 15:19:45
【问题描述】:
所以我开始在我的 Play 2.0 应用中使用 Akka Actor。我很快注意到重复调用向同一个actor发送消息,通过以下方式指定:
val myActor = Akka.system.actorOf(Props[MyActor], name = "myactor")
导致InvalidActorNameException。
然后我开始在doc 中阅读有关创建 Actors 的内容
文档似乎建议创建一个“主”Actor 类,其中指定了所有单独的 Actor。该 Actor 类的 receive 将依次匹配消息并将消息委托给适当的 Actor。
所以我尝试了这个,现在有类似的东西:
class MasterActor extends Actor{
import context._
val emailActor = actorOf(Props[EmailActor], name = "emailActor")
protected def receive = {
case reminder : BirthdayReminder => emailActor ! reminder
}
}
问题是我的情况与以前相同。当我尝试以下操作时,我不知道如何避免InvalidActorNameException:
val myActor = Akka.system.actorOf(Props[MasterActor], name = "MasterActor")
myActor ! BirthdayReminder(someBirthday)
那么组织我的 Actor 的正确方法是什么?
【问题讨论】:
标签: scala playframework playframework-2.0 akka