代码之家  ›  专栏  ›  技术社区  ›  Abzelhan

阿克卡演员生命周期

  •  0
  • Abzelhan  · 技术社区  · 6 年前

    我使用的是AKKA Java API 2.5.12。我想实施 推送发送器 . 我使用一秒延迟的无限循环,在每次迭代中,我使用hikari数据源连接池从数据库获取50个推送。然后我在这个50次推送的列表上迭代,在每次迭代中我都以这种方式创建新的actor:

    final ActorRef pushSenderActor = system.actorOf(PushSenderAktor.props());
    pushSenderActor.tell(push, ActorRef.noSender());
    

    然后 普希森德拉克托 扮演他们的角色并异步发送推送。

    我的问题是: 我需要在一个演员表演完推送后阻止他吗 context().stop(getSelf()); 方法,否则这个演员会在执行他的 createReceive() 方法? 因为我不想在我的演员系统里有好莱坞。

    1 回复  |  直到 6 年前
        1
  •  1
  •   Christopher Batey    6 年前

    你需要明确地停止或发送毒丸

    https://doc.akka.io/docs/akka/2.5/actors.html#actor-lifecycle

    还可以考虑在顶级参与者中使用调度程序作为常规工作,并考虑将参与者保留在周围并将其用作长期工作人员。