如何使用Reactor而不是java的调度程序获得相同的效果?
Executors.newSingleThreadScheduledExecutor()
.scheduleAtFixedRate(() -> counter.set(0) , computeDelay(), computePeriod(), TimeUnit.MILLISECONDS)
我试过
Flux
.interval(Duration.ofMillis(computeDelay()), Duration.ofMinutes(RESET_PERIOD_MINUTES))
.doOnNext( counter.set(0))
.subscribe())
但它产生了不必要的Long值。我在Flux API中找到了一些调度程序但是在尝试创建一个我有Disposable对象的调度程序时,我不知道该怎么办呢
答案 0 :(得分:1)
Scheduler.schedulePeriodically是另一个选项,几乎等同于ExecutorService.scheduleAtFixedRate,除了它返回一个Disposable而不是Future of Void。 (在这两种情况下,你都用它来取消工作)