0

私は Java の同時実行機能を使い始めており、ここではインターフェースを使用していますScheduledExecutorService。10 秒ごとに 1 時間ビープ音を鳴らすこのスニペットに出くわしました。

import static java.util.concurrent.TimeUnit.*;
 class BeeperControl {
    private final ScheduledExecutorService scheduler =
       Executors.newScheduledThreadPool(1);

    public void beepForAnHour() {
        final Runnable beeper = new Runnable() {
                public void run() { System.out.println("beep"); }
            };
        final ScheduledFuture<?> beeperHandle =
            scheduler.scheduleAtFixedRate(beeper, 10, 10, SECONDS);
        scheduler.schedule(new Runnable() {
                public void run() { beeperHandle.cancel(true); }
            }, 60 * 60, SECONDS);
    }
 }

これは私のような初心者にとっては簡単に思えましたが、私の問題は、MySql テーブルを 10 秒ごとに永遠に読み取る Java プログラムが必要なことです。スケジュールされたエグゼキューターは、この種の作業に最適ですか?

4

1 に答える 1

3

永久に実行するには、コードを取り出してタスクをキャンセルします。

于 2013-05-06T17:35:45.150 に答える