程序化调度-最佳方法是什么?

时间:2019-11-07 19:10:03

标签: quarkus

我需要根据一些配置数据来启动多个独立的定期任务-总数尚不清楚。例如,我想以不同的间隔和不同的参数检查不同目录的内容,这些目录和参数是从配置中读取的。

在我看来,quarkus-scheduler只能调度固定的,预先已知的方法。动态/编程进行调度的最佳方法是什么? vertx.setPeriodic是正确的方法还是我应该以某种方式访问​​Quartz?

1 个答案:

答案 0 :(得分:1)

是的,您可以注入托管的 <form class="crush-form"> <div> <input class="name" type="text" name="name" required /> <label for="">Name</label> </div> <div> <input class="address" type="text" name="address" required /> <label for="">Address</label> </div> <div class="lol"> <input type="submit" onclick="SubmitClickHandle()" name="huhu" value="ggg" /> <button onclick="closeDialog()">Close Dialog</button> </div> </form> 实例并使用VertxVertx.setPeriodic()(单次计时器)。但是请记住,处理程序是在事件循环线程上执行的,因此代码不应阻塞。如果您确实需要执行一些阻止代码,请查看Vertx.setTimer()

该计划是为类似的用例添加一个可注入的托管Vertx.executeBlocking()

还有https://github.com/quarkusio/quarkus/issues/7246-这将允许您利用Quartz API(使用ScheduledExecutorService扩展名时)。