Главная » Java » Закрытие исполняющей системы

0

 

   Обычно исполняющая система закрывается (shutdown), если заканчивает выполнение последний из пользовательских (user) потоков вычислений (threads) (см. раздел 10.9 на странице 275). Функционирование объекта Runtime можно остановить и принудительно — посредством вызова метода exi t с передачей последнему целочисленного значения кода завершения (exit value) (нулевое значение кода трактуется как признак нормального завершения, а ненулевое свидетельствует о неблагополучном исходе). Обращение к методу exit приводит к немедленному аварийному завершению работы всех потоков, выполняемых виртуальной машиной, независимо от их текущего состояния. Потоки не просто прерываются или приостанавливаются — они перестают существовать, поскольку перестает действовать виртуальная машина сама по себе; ни одно из предложений finally не выполняется.

   В любой ситуации — при вызове exit либо нормальном окончании выполнения последнего из пользовательских потоков — инициируется последовательность специальных действий по закрытию исполняющей системы. Виртуальная машина может быть остановлена и "извне" — например, при вводе пользователем определенной команды с клавиатуры (многие системы реагируют на нажатие комбинации клавиш <Ctrl+C>), выходе пользователя из системы либо перезагрузке или выключении компьютера.

   При обращении к методам, имеющим отношение к процедуре закрытия исполняющей системы, проверяется наличие полномочий доступа — если программа таковыми не обладает, выбрасывается исключение типа Securi tyException.

 

Источник: Арнолд, Кен, Гослинг, Джеймс, Холмс, Дэвид. Язык программирования Java. 3-е изд .. : Пер. с англ. – М. : Издательский дом «Вильяме», 2001. – 624 с. : ил. – Парал. тит. англ.

По теме:

  • Комментарии