gpt4 book ai didi

java - Akka调度程序: How akka scheduler work?

转载 作者:行者123 更新时间:2023-11-30 07:12:19 25 4
gpt4 key购买 nike

我将探索Akka Scheduler。根据我的假设,调度程序在另一个线程的特定时间内运行计划任务。根据documentation ,它们在调度程序中使用 Runnable 对象。这还不清楚,为什么它们使用 Runnable 对象并且没有在 runnable 上调用 start() ,新的线程堆栈不会产生。或者 Scheduler 没有创建一个单独的线程来运行计划任务?

akka 调度程序在幕后是如何工作的?

最佳答案

当我使用Akka Scheduler时,我尝试研究源代码以获得更多知识 - https://github.com/akka/akka/blob/master/akka-actor/src/main/scala/akka/actor/Scheduler.scala

如您所见,Akka Scheduler 使用 ExecutorContect(ForkJoinPool 下的包装器)作为隐式参数来调用新的 Runnable code> 并通过 接收器向其他参与者发送消息!通过利用即发即忘模式来发送消息

理解整体情况的另一个重要类是FiniteDuration(它允许设置延迟时间)、Cancellable(它允许取消计划操作的执行) ,它们在大多数与调度过程相关的方法中使用(例如scheduleOnce,我用它来实现参与者之间的时间同步)

关于java - Akka调度程序: How akka scheduler work?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39031805/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com