タグ

ブックマーク / qiita.com/thrakt (1)

  • Spring Boot で @Async の処理が待ってから落ちるようにする - Qiita

    Spring Boot で @Async をつけた処理は非同期で実行されますが、 そのままだとアプリ停止時に容赦なく途中で落ちます。 悲劇……それを回避したい。 以下の手順で実現できます。 @Asyncで使われるプールを指定 アプリ停止時に、プール内のタスクが完了するまで待つようにする プールの定義 @Bean public ThreadPoolTaskExecutor asyncExecutor() { ThreadPoolTaskExecutor threadPool = new ThreadPoolTaskExecutor(); // 最大3タスク threadPool.setCorePoolSize(3); threadPool.setMaxPoolSize(3); // アプリ終了時にshutdown threadPool.setWaitForTasksToCompleteOnS

    Spring Boot で @Async の処理が待ってから落ちるようにする - Qiita
  • 1