LINUX.ORG.RU

перехват аппаратных исключений


0

0

привет всем...
может кто-нить знает/делал в юнихе перехват аппаратных исключений (типа неправильного обращения к памяти), но не просто дернуть сигнал, а сделать типа try...catch (как в VC - извиняюсь за ненавистный пример :) )...
или может кто-нить подскажет другое решение задачи:
есть некая мультитредовая библиотека и в ней может произойти исключение (типа (int*)0 = 0 - глупый пример), вот, нужно отловить это исключение и развернуть стек вызова... в микрософтовском компилере все такие критичные участки кода в каждой функции обрамляются try/catch и компилятся с ключем (не помню какой - catch ловит аппаратные исключения), вот, дальше в catch делается throw и дальше переход наверх и т.д. до верха... вот. просто позарез нужен подобный механизм для линуха...

помогите, люди добры :~( (плАчу)

★★

Ответ на: комментарий от master

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

NewComer
()

Не все сигналы можно отловить. Девятый точно не отловишь.
А try и catch есть не только в VC, в g++ он тоже имеется.
ИМХО, в линухе обычной проге такого не позволят

Havoc ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.