Мне очень трудно найти способ запуска, остановки и перезапуска потока в Java.
В частности, у меня есть класс Task
(в настоящее время реализует Runnable
) в файле Task.java
. Мое основное приложение должно иметь возможность ЗАПУСТИТЬ эту задачу в потоке, STOP (убить) поток, когда это необходимо, а иногда KILL и RESTART поток...
Моя первая попытка заключалась в ExecutorService
, но я не могу найти способ перезапустить задачу. Когда я использую .shutdownnow()
, любой будущий вызов .execute()
терпит неудачу, потому что ExecutorService
- это "выключение"...
Итак, как я мог это сделать?