Как поймать exit () во встроенном модуле C ++ из кода Python?
Вопрос
Я встраиваю библиотеку c ++ (связывание осуществляется с помощью SIP) в моем приложении на Python. При определенных обстоятельствах (случаях ошибок) эта библиотека использует exit (), что приводит к завершению всего приложения. Есть ли способ перехватить это событие, или мне нужно изменить библиотеку, чтобы по-разному обрабатывать ошибки? Р>
Большое спасибо,
Решение
Вы должны изменить источник библиотеки. Нет «обработки исключений» в C и exit ()
не возвращаются к вызывающему коду ни при каких обстоятельствах.
Другие советы
Вы можете переопределить связывание библиотеки с помощью LD_LIBRARY_PATH и создать собственную функцию выхода. Работает нормально.
Не связан с StackOverflow