Исключительные ситуации и способы их обработки. Блоки обработки и блоки завершения. Структурная обработка исключительных ситуаций

Обработка исключительных ситуаций (англ. exception handling) — механизм языков программирования,предназначенный для описания реакции программы на ошибки времени выполнения и другие возможныепроблемы (исключения), которые могут возникнуть при выполнении программы и приводят к невозможности(бессмысленности) дальнейшей отработки программой её базового алгоритма. В русском языке такжеприменяется более короткая форма термина: «обработка исключений».

Общее понятие исключительной ситуации

Во время выполнения программы могут возникать ситуации, когда состояние данных, устройств ввода-вывода или компьютерной системы в целом делает дальнейшие вычисления в соответствии с базовымалгоритмом невозможным или бессмысленными. Классические примеры подобных ситуаций:

· Нулевое значение знаменателя при выполнении операции целочисленного деления. Результата у операциибыть не может, поэтому ни дальнейшие вычисления, ни попытка использования результата деления неприведут к решению задачи.

· Ошибка при попытке считать данные с внешнего устройства. Если данные не удаётся ввести, любыедальнейшие запланированные операции с ними бессмысленны.

· Исчерпание доступной памяти. Если в какой-то момент система оказывается не в состоянии выделитьдостаточный для прикладной программы объём оперативной памяти, программа не сможет работатьнормально.

· Появление сигнала аварийного отключения электропитания системы. Прикладную задачу, по всейвидимости, решить не удастся, в лучшем случае (при наличии какого-то резерва питания) прикладнаяпрограмма может озаботиться сохранением данных.

· Появление на входе коммуникационного канала данных, требующих немедленного считывания. Чем бы низанималась в этот момент программа, она должна перейти к чтению данных, чтобы не потерятьпоступившую информацию.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: