Я запускаю ExecutorService
для выполнения тяжелых вычислений, однако я не хочу загрязнять алгоритмический класс/метод с помощью операций runner, в этом случае я бы хотел сделать периодическую проверку, если его следует прекратить изящно.Killing Thread без периодической проверки живого состояния
Я попытался найти решения, которые все еще не увенчались успехом, и я пришел к выводу, что это невозможно, потому что только сам поток разрешен для «autokill себя».
Так что мой вопрос в том, есть ли какой-либо способ прекратить поток «снаружи» потока, вызвав некоторый принудительный попыток убить поток.
Если нет, возможно, лучшим решением является использование аспекта и перехват каждой итерации путем добавления проверки статуса убийства?
Не можете ли вы прервать нить? – Lokesh
Да, отметьте флаг. Возможно, вы можете обернуть код вычисления в другом классе, который взаимодействует с логикой планирования? – sje397
Возможный дубликат [Как прекратить поток java изящно?] (Http: // stackoverflow.com/questions/3194545/how-to-stop-a-java-thread-gracefully) –