scala – 如何从2.0开始启动Akka演员?
发布时间:2020-12-16 09:22:32 所属栏目:安全 来源:网络整理
导读:我正在使用Akka演员,我试图更新我的代码以使用最新的2.0里程碑. API改变了一些,例如,现在,Actors的创建通过一种叫做ActorSystem的东西来工作. 启动和停止演员也改变了 – 后者可以通过ActorSystems方法.stop(..)和.shutdown().但我可以为我的生活找出如何启
我正在使用Akka演员,我试图更新我的代码以使用最新的2.0里程碑. API改变了一些,例如,现在,Actors的创建通过一种叫做ActorSystem的东西来工作.
启动和停止演员也改变了 – 后者可以通过ActorSystems方法.stop(..)和.shutdown().但我可以为我的生活找出如何启动他们… 解决方法
在Akka 2.0中,不需要一个start()方法,因为只要在ActorSystem(或另一个Actor)的上下文中实例化Actors即可启动,但您需要使用以下提供的方法之一来实例化它们ActorSystem或Actor的上下文.
所以,如果你有一个名为MyClass的Actor子类,你可以启动它: val system = ActorSystem() val myActor = system.actorOf(Props[MyActor]) 或者,如果你的演员拿到构造函数: val myActor = system.actorOf(Props(new MyActor("arg1")) 或者,如果你在另一位演员身上, val myActor = context.actorOf(Props(new Actor("arg1")) 然后你的演员可以立即收到消息,例如 myActor ! MyMessage 即使您的顶级演员也会立即启动,因为2.0中的所有演员都会自动进入监控层级.一旦演员用ActorSystem实例化,它就可以接收消息了. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |