我想生成许多在特定时间间隔执行私有方法的Actors。此任务需要无限期地以时间间隔运行,直到Actor终止。
我在Java中看到的所有解决方案都涉及创建一个新线程,例如Spring TaskExecutor或使用ScheduledExecutorService。因为一个Actor已经拥有自己的Fiber,所以我认为没有理由产生一个线程,除非我的任务非常繁重。
在Elixir中,使用Process.send_after()非常简单。
使用Quasar在Java中有类似的方法吗?
答案 0 :(得分:1)
光纤具有方法sleep(long millis)
,因此您可以轻松创建一个定期执行的光纤:
while (!end) {
doTask();
sleep(period);
}