Здравствуйте, _Smok, Вы писали:
S>Есть поток, считывающий строки:
S>
S>BufferedReader input = new BufferedReader(new InputStreamReader(socket.getInputStream()));
S>где socket — понятно что.
S>
S>В теле потока читаю строку:
S>
S>String str = input.readLine();
S>
S>Вопрос! как этот поток уничтожить, если он мне более не нужен?
S>Не хочу использовать метод stop() (который, как гласит документация, жирно выделен словом 'Deprecated'). Есть вариант юзать interrupt(), но вылетает исключение InterruptedIOException (обрабатываем его), но вообще-то нехорошо использовать исключения при нормальной работе (на то они и исключения) (КСТАТИ interrupt() почему-то не пашет, после его вызаова isInterrupted() = true и isAlive() = true !)
S>Закрывать stream input — тоже не дело, тоже исключение вылетит...
S>
S>
Попробуй destroy() или finalise()
Можно принудительно собрать мусор — вроде бы это finalise и делает
(то есть юзает gc.collect())