0

特定の遅延を伴って、Eclipse で Java プログラムを複数回実行したいと考えています。ScheduleAtFixedRate()一定時間経過後にプログラムを再実行するために使用しようとしていました。ScheduleAtFixedRate()では、との主な違いは何ScheduledExecutorServiceですか?

後者を使用する利点は何ですか?コンピューターがスリープ モードに設定されている場合、実行スケジュールを実行し続けますか?

4

2 に答える 2

2

.scheduleAtFixedRate()つまり(小さな に注意してくださいs)、それはによって提供されるメソッドScheduledExecutorServiceです。そのため、どちらを使用しても{dis,}利点はありません。

ScheduledExecutorServiceたとえば、次のように呼び出して を作成できます。

final ScheduledExecutorService service
    = Executors.newScheduledThreadPool(...);
service.scheduleAtFixedRate(...);

に関して:

コンピューターがスリープ モードに設定されている場合、実行スケジュールを実行し続けますか?

いいえ。コンピューターをスリープ状態にするのは OS であり、必要な時間にウェイクアップするように指示する必要があるのは OS です。実行中の Java プログラムは JVM であり、プロセスは最終的に OS によって制御されます。

于 2013-07-05T08:21:35.713 に答える
0

ScheduledExecutorService は、タスクのエグゼキュータの動作を定義するインターフェイスであり、ScheduleAtFixedRate() は、実装クラス、つまりエグゼキュータが入力タスクを一定間隔で実行することを期待するこのインターフェイスのメソッドです。

コンピュータがスリープ状態または休止状態になると、何も実行されません。

于 2013-07-05T08:28:03.333 に答える