システムトレイにある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などのスケジューリング ライブラリを参照するか、 で提供されるサポートを使用する必要がScheduledExecutorService
ありますjava.util.concurrent
。