2012-04-05 19 views
0

void java.util.Timer.scheduleAtFixedRate(TimerTaskタスク、long delay、long period)を使用して、指定された期間でタスクを実行しています。 私はかなり大きい期間を指定したいと思います - 期間はより大きく、最大はです。私は期間を指定するために二重の値を使用したい。 誰かが私を助けることができますか? 非常に長い時間間隔でタスクを実行する他の方法はありますか。 ありがとう非常に長い定期的な間隔でタスクを実行するようスケジュールする方法

+0

期間はどのくらい正確ですか? – Andrejs

+5

Long.MAX_VALUEより長い?タスクが実行される前に太陽が爆発している可能性があります(実際にはLong.MAX_VALUEミリ秒は2億9200万年です)... – assylias

+0

はい、私の間違いです。 繰り返し周期を間違って計算していました。 (7 * 24 * 60 * 60 * 1000)* 5は負の値になります。 長い間の答えを型キャストした後、正常に動作します。 (long)5 * 7 * 24 * 60 * 60 * 1000は正しい値を示します。おかげさまで – user357254

答えて

0

はい私の間違いです。 繰り返し周期を間違って計算していました。 (7 * 24 * 60 * 60 * 1000)* 5は負の値になります。 長い間の答えを型キャストした後、正常に動作します。 (long)5 * 7 * 24 * 60 * 60 * 1000は正しい値を示します。おかげさまで

0

あなたの意図についての十分な情報を提供していない - どのくらいの期間を話していますか?日、月、年?

ここで間違ったツールを使用していると思われます。ジョブスケジューリングについては、cron-likeスケジューリングをサポートするので、Quartzのようなものを見てみましょう。スケジュールは秒/分/時/日/年で指定できます。

関連する問題