Книга: Основы объектно-ориентированного программирования
Цепочка вызовов
Цепочка вызовов
Обсуждая механизм обработки исключений, полезно иметь ясную картину последовательности вызовов, приведших в итоге к исключению. Это понятие уже появлялось при рассмотрении механизма языка Ada.
Рис. 12.1. Цепочка вызовов
Пусть r0 будет корневой процедурой некоторой системы (в Ada это программа main). В каждый момент выполнения есть текущая программа, вызванная последней и ставшая причиной исключения. Пройдем по цепочке в обратном порядке, начиная с текущей программы, от вызываемой к вызывающей программе. Реверсная цепочка (r0, последняя вызванная r0 программа r1, последняя вызванная r1 программа r2 и так далее до текущей программы) называется цепочкой вызовов.
Если возникает исключение, то для его обработки, возможно, придется подняться по цепочке, пока не будет достигнута программа, способная справиться с исправлением ситуации. Этот процесс заканчивается, когда достигнута программа r0 и не найден нужный обработчик исключения.
- Цепочка создания ценности больших данных
- 2.2.3. Коды ошибок системных вызовов
- 7.2.11. Запуск SNAT и цепочка POSTROUTING
- Номера системных вызовов
- Производительность системных вызовов
- Обработка системных вызовов
- Реализация системных вызовов
- Просмотр стека вызовов
- Очередизация асинхронных вызовов процедур
- 9.2.3. Использование системных вызовов
- Передача вызовов конструктора с помощью this
- 26.3. Использование обратных вызовов