2017-12-19 20 views
0

リマインダーアプリケーションを実行しています。Javaスレッドプールエグゼキュータ

私は優先順位キューにジョブを持っています。

サンプルジョブオブジェクトは{job_id : 1001, epoch : 1514140200000}です。

タスクは、そのエポック時間にジョブを実行させることです。

キューからジョブをデキューし、そのスレッドにスレッドを割り当てて、そのエポック時間に実行するようにスケジュールしています。それを行う方法はありますか、それとも正しい方法ですか?

+0

質問を展開してください。私たちが確認できるコードは提供していません。 –

+0

@MartínStraus私はコードを書いていません。私はそれが正しい方法であるかどうかを知る必要があります。それだけでコードに進むことができます。 – phenomenal

+0

コードを記述すると、説明が意味することを理解するのが簡単です。あなたの説明をコードに翻訳してください。 –

答えて

0

Javaスレッドプールから実行する場合は、ScheduledExecutorService:https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ScheduledExecutorService.htmlを参照してください。

これは素晴らしいサンプルですが、基本的には、特定の時間または特定の遅延の後に実行するタスクをスケジュールできます。

Quartzのようなライブラリ(誰かのメモとして)は他にもたくさんのオプションを提供します。

+0

クォーツスケジューラでジョブのエポックタイムを設定することはできますか? – phenomenal

+0

実行者サービスは「この正確な時刻に実行」機能を提供していません(もしあなたがAndroid用に書かれているのであれば、それは特別な機能を提供します)。その翻訳を自分で書くか、Quartzを使う必要があります。 – user1676075

関連する問題