Как обработка исключений реализуется языками программирования? - PullRequest
7 голосов
/ 04 ноября 2011

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

  1. Какой механизм используется языками программирования для реализации блоков try {} catch {} (под капотом)?
  2. Как именно работает разматывание стека внутри?
  3. В чем основные различия между реализациями try {} / catch {} между различными языками, такими как C ++ и Java?Они предлагают существенно различаются или они одинаковы?
  4. Является ли метод перемотки стека в С setjump / longjump похож на блок try / throw / catch?
  5. Почему люди говорят, что «разматывание стека»"это дорого?
  6. Что такое SEH (Структурная обработка исключений?)

1 Ответ

2 голосов
/ 04 ноября 2011

Это хорошее описание того, как работает обработка исключений, https://gforge.inria.fr/frs/download.php/26600/PBE2-Exceptions-2010-03-02.pdf

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...