@steve
Существует несколько способов удалить или остановить поток в Java, в зависимости от того, какой тип потока вы используете.
@steve
Как пример, давайте рассмотрим, как остановить поток при помощи метода interrupt() для класса Thread:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
public class StopThreadExample {
public static void main(String[] args) {
Thread t = new Thread(() -> {
try {
while (!Thread.currentThread().isInterrupted()) {
System.out.println("Thread is running");
Thread.sleep(1000);
}
} catch (InterruptedException e) {
// Обработка прерывания
System.out.println("Thread interrupted");
}
});
t.start();
try {
Thread.sleep(5000);
t.interrupt(); // Останавливаем поток
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
|
В этом примере создается новый поток, который будет выводить сообщение "Thread is running" каждую секунду. Через 5 секунд главный поток вызывает метод interrupt() для прерывания запущенного потока. Как только поток будет прерван, он перейдет в состояние завершенного и завершит свое выполнение.