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