Вопросы к Поиску с Алисой
Метод interrupt() для прерывания потока в Java рекомендуется использовать для вывода потока из состояния ожидания или спячки. www.geeksforgeeks.org github.com
Если у потока были вызваны методы sleep() или wait(), то текущее состояние прервётся и будет выброшено исключение InterruptedException. www.geeksforgeeks.org github.com
Если поток не находится в спящем или ожидающем состоянии, то вызов метода interrupt() не прерывает поток, но устанавливает флаг прерывания в значение true. www.geeksforgeeks.org
Однако есть исключение: если поток заблокирован на чтении данных, то вызов interrupt() из этого состояния его не выведет. github.com