cron のようなスケジュールでタスクを実行する TaskExecutor と Taskscheduler を備えたシステムをセットアップしましたが、オンデマンドでタスクを開始することもできます。
私が解決できなかった特定の問題の 1 つは、どの特定のタスクが現在実行されているかについて、エグゼキューターとスケジューラーから情報を取得するにはどうすればよいかということです。これを行う標準的な方法はありますか?特定のサブクラスまたは実装を調べる必要がありますか? 私たちはSpring 3.2を使用しており、ThreadPoolTaskExecutorを試しましたが、非推奨であることがわかりました. それには、私が達成したいことに向かっていくように見える 'getActiveCount()' メソッドが 1 つありました (完全ではありませんが)。
現在、ORM オブジェクトの状態のスナップショットを取得し、30 分待ってから別のスナップショットを取得するシステムを導入しました。これら 2 つの比較は、タスクがそのオブジェクトで実行されているかどうかを知る非常に簡単な方法です。
ただし、これはこれを行うための最良の方法ではないようです (まったく!)。
より良い方法はありますか?