Как прервать работу потока(остановить поток)
Я делал програму на Java с использованием нескольких потоков, и столкнулся с проблеммой: я не знаю как прервать работу потока. Я пытался это сделать с помощью метода stop() но потоку как-будто просто пофигу(хотя я проверял в отдельном файле и там он сработал), и метод interrupt() тоже не работает, не знаю почему. Короче подскажите способ, желательно попроще, как прервать работу потока.
Ответы (1 шт):
Автор решения: AndreyKirov
→ Ссылка
Внутри метода run() потока можно проверять в цикле значение isInterupted:
public void run() {
int i=0;
while(!isInterrupted()){
System.out.println(i++);
try {
sleep(1000);
} catch (InterruptedException e) {
break;
}
}
}
и вызывать из основного потока метод interupt(), когда нужно прервать поток.