409-00-09
info@realnetspb.ru
support@realnetspb.ru
служба технической поддержки
|
|
|
Спортивный уголок
21.07.2016
В точках отмены осуществляется проверка флага прерывания вызовом метода экземпляра islnterrupted(), который возвращает логическое значение true, если поток получил требование о прерывании, в противном случае возвращается значение false. Значение true сообщает потоку, что от него потребовали завершения. Обычно точки отмены создаются в теле циклов или перед началом выполнения продолжительных операций, чтобы позволить потоку при необходимости пропустить определённую часть задачи. Хотите всегда быть в отличной физической форме? Установите спортивный уголок.
Флаг прерывания также поддерживается большинством блокирующих методов и библиотек, поток, заблокированный в текущий момент, получив запрос на прерывание, сгенерирует исключение InterruptedException. Благодаря этому поток перед завершением может очистить состояние совместно используемых объектов в ветви catch. Исключение InterruptException сбрасывает флаг прерывания, например метод is Interrupted!) вернет false, даже если поток ранее получил требование на прерывание. В дальнейшем это может привести к возникновению проблем при возврате по стеку вызовов данного потока, так как никто не будет знать, что поток получил запрос на прерывание. Поэтому, если поток не должен выполнять каких-либо операций очистки при прерывании, ему следует передать исключение InterruptedException дальше но стеку вызовов. Если операции очистки необходимы, их следует выполнить в ветви catch, после чего сам ноток должен прервать своё выполнение ещё раз, чтобы оповестить вызывающий код о прерывании.
|
|
|
© 2001-2014 ООО Реалнет-СПб Услуги: бесплатное подключение к Интернет, цифровое IPTV, каналы в HD-качестве, ПО по подписке: антивирусы и родительский контроль, служба технической поддержки и компьютерной помощи, настройка Wi-Fi - роутера, подключение Wi-Fi. |