Для принудительной остановки потока в Java можно использовать метод interrupt() у объекта потока(Thread). Например, чтобы прервать выполнение потока myThread, необходимо вызвать у него метод interrupt():
myThread.interrupt();
После этого у потока будет установлен флаг прерывания(isInterrupted()), который можно использовать для принятия решений в методе run().
Вот пример:
Thread myThread = new Thread(new Runnable() {
public void run() {
while (!Thread.currentThread().isInterrupted()) {
// do something }
}
});
myThread.start();
// ... myThread.interrupt(); // прерывание потока
1606 вопрос-ответ по Java: https://github.com/DEBAGanov/interview_questions
Tелеграмм канал: https://t.me/DEBAGanov
Мое резюме: https://github.com/DEBAGanov