остановказадачи - PullRequest
       1

остановказадачи

3 голосов
/ 11 августа 2011

Наше приложение работает как в режиме клиент-сервер, так и в автономном режиме, когда код сервера встроен в процесс клиента.В весенних бобах xml у меня есть запланированные задачи, например

<task:scheduled-tasks scheduler="myScheduler">
        <task:scheduled ref="link-to-server" method="heartbeat" fixed-rate="1000"/>
</task:scheduled-tasks>

В автономном режиме приложение не закрывается, поскольку потоки планировщика не являются потоками демона.Как я могу остановить их или сделать эти темы демоном?

Спасибо!

1 Ответ

0 голосов
/ 11 августа 2011

Не делайте их демонами, которые слишком резко останавливают потоки и поэтому могут оставить ваш процесс в несогласованном состоянии.Я считаю, что стандартное отключение контекста Spring и, следовательно, планировщик, просто прерывает всех запущенных потоков.Для этого вам следует опросить Thread.currentThread (). IsInterrupted в ваших задачах для определения завершения работы.Методы блокировки, такие как Object.wait () , будут прерывать InterruptedException при прерывании.

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