【发布时间】:2013-08-04 06:31:55
【问题描述】:
我正在尝试在游戏中实现这种模式:
class MyController extends Controller {
def getStuff(actorPath: String) = {
implicit request => Async {
val myFutureStuff = system.actorSelection(actorPath) ? FindStuff()
// Handle the result
}
}
}
但显然你不能“询问”一个 ActorSelection,只能询问一个 ActorRef。
所以你必须从 ActorSelection 中获取一个 ActorRef,这意味着向 ActorSelection 发送一个“Identify”消息并获取响应。不过,我无法从控制器中找到一种简单的方法来执行此操作,因为参与者无法将“识别”的响应发送回给它。
从我看到的示例中,人们通过控制器与演员交流,他们直接使用 ActorRef。在我的应用程序中,我不想挂在这些 ActorRef 上。相反,我将他们解雇,然后让他们离开,直到我需要与他们沟通。发生这种情况时,我希望能够通过它们的路径来处理它们并询问它们的一些信息。
有没有更好的方法来做我想做的事,同时仍然使用演员后端/播放前端方法?
非常感谢
【问题讨论】:
标签: scala playframework akka