Quartz scheduler shutdown (true) ждать, когда все запущенные потоки запущенных заданий остановятся? - PullRequest
1 голос
/ 10 января 2011

Если у меня есть работа, и из этой работы я создаю несколько потоков, что происходит, когда я вызываю scheduler.shutdown (true)?

Будет ли планировщик ждать завершения всех моих потоков или нет?

1 Ответ

4 голосов
/ 10 января 2011

Кварц 1.8.1 API документы :

Останавливает запуск планировщиком триггеров и очищает все ресурсы, связанные с планировщиком.

Параметры: waitForJobsToComplete - если true, планировщик не разрешит возврат этого метода до тех пор, пока все выполняемые в данный момент задания не будут завершены.

Quarts не знает и не заботится о каких-либо потоках, созданных вашей работой, он просто будет ждать завершения работы. Если ваша работа порождает новые темы, а затем завершается, то, что касается Кварца, она завершена.

Если вашей работе нужно ждать завершения своих порожденных потоков, вам нужно использовать что-то вроде ExecutorService (см. Javadoc для java.util.concurrent), что позволит потоку работы ждать завершения своих порожденных потоков. , Если вы используете сырые потоки Java, используйте Thread.join().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...