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