我正在使用Akka Java API 2.5.12。我想实现推送发送器。我使用具有一秒延迟的无限循环,并且在每次迭代中,我都使用Hikari数据源连接池从数据库中提取了50次推送。然后,我遍历此50次推送列表,并在每次迭代中以这种方式创建新的Actor:
final ActorRef pushSenderActor = system.actorOf(PushSenderAktor.props());
pushSenderActor.tell(push, ActorRef.noSender());
然后,PushSenderAktor扮演角色并异步发送推送。
我的问题是:我必须在演员执行
context().stop(getSelf());
方法的推送发送后停止它,还是该演员在执行createReceive()
方法后会自杀?因为我不想在ActorSystem中包含HollyWood。
最佳答案
您需要明确停止或发送PoisonPill
https://doc.akka.io/docs/akka/2.5/actors.html#actor-lifecycle
还应考虑在顶级演员中使用调度程序进行常规工作,并考虑将演员留在身边并用作长期工人。
关于java - Akka Actor 生命周期,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50625209/