我一直在玩vertx.setTimer
和vertx.setPeriodic
,但是我没有在Java中找到一种简单的方法来执行一个计划的任务(在特定时期调用一个API,例如在12.00 AM和23.00 PM) 。
我也看过一个有关vertx和chime的博客(https://vertx.io/blog/time-scheduling-with-chime/),但我不确定它是否对vertx 3.9.0版本具有支持或一致性。
任何想法 ?
先感谢您。
最佳答案
尝试使用java.util.Timer,示例每天在21:00运行:
TimerTask timerTask = new TimerTask() {
@Override
public void run() {
vertx.runOnContext(event -> { System.out.println("timer in vert.x context!"); });
}
};
Timer timer = new Timer();
Calendar today = Calendar.getInstance();
today.set(Calendar.HOUR_OF_DAY, 21);
today.set(Calendar.MINUTE, 0);
today.set(Calendar.SECOND, 0);
timer.schedule(timerTask, today.getTime(), TimeUnit.MILLISECONDS.convert(1, TimeUnit.DAYS));
关于java - 每天两次使用Java和vertx在12:00 AM和23:00 PM对一个API进行两次调用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/61858475/