Java でコンピューターの時計 (分) を監視し、変更されるたびにメソッド/スレッドを起動するための最良の方法を探しています。
したがって、時間が 13:20 で、13.21 に変更された場合は、何かを行います。そのため、わずかな変更があるたびに、いくつかのコードが起動されます。
時計の分の部分の変化を聞くにはどうすればよいでしょうか?
ありがとう、リチャード
その TimerTask のイベント ハンドラーで、新しい繰り返し発生する TimerTask を 60,000 ミリ秒ごとに実行するようにスケジュールします。
int milisInAMinute = 60000;
long time = System.currentTimeMillis();
Runnable update = new Runnable() {
public void run() {
// Do whatever you want to do when the minute changes
}
};
Timer timer = new Timer();
timer.schedule(new TimerTask() {
public void run() {
update.run();
}
}, time % milisInAMinute, milisInAMinute);
// This will update for the current minute, it will be updated again in at most one minute.
update.run();
Quartzの仕事のようですね。これは、次の cron 式を使用して実行できます。
0 * * * * ?
Date d = new Date(System.currentTimeMillis());
次に、で議事録を取得できますd.getMinutes()
。の値が変更されるのを待っているスレッドでチェックを実行しますd.getMinutes()
。