有没有办法让Java程序坐在系统托盘中不断检查计算机日期?也许不是每一秒,但每一分钟左右?可以在不占用所有计算机资源的情况下完成吗?
目前我正在考虑运行日期检查方法,该方法只会检查按下按钮的日期,但这有点蹩脚,并且不会像我想要的那样真正起作用。
答案 0 :(得分:3)
您可以使用a ScheduledExecutorService
- 只会使用checkDate
方法所需的资源(+一些不会引起注意的轻微开销)。
ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
Runnable r = new Runnable() {
@Override
public void run() {
checkDate();
}
};
scheduler.scheduleAtFixedRate(r, 1, 1, TimeUnit.MINUTES);
答案 1 :(得分:1)
您应该查看调度库,例如Quartz或使用ScheduledExecutorService
中java.util.concurrent
提供的支持。