我正在尝试在游戏中实现这种模式:
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 上。相反,我将他们解雇,然后让他们离开,直到我需要与他们沟通。当这种情况发生时,我希望能够通过他们的路径来处理他们并询问他们的一些信息。
在仍然使用演员后端/播放前端方法的同时,有没有更好的方法来做我想做的事?
非常感谢