如何从python代码中捕获嵌入式C ++模块中的exit()?
题
我在我的python应用程序中嵌入了一个c ++库(用SIP完成绑定)。在某些情况下(错误情况),此库使用exit(),这会导致我的整个应用程序退出。 有没有办法捕获此事件,还是我需要修改库以不同方式处理错误情况?
非常感谢,
解决方案
您必须修改库的来源。没有<!>“;异常处理<!>”;在C和exit()
中,在任何情况下都不会返回到调用代码。
其他提示
您可以覆盖与LD_LIBRARY_PATH链接的库并创建自己的退出函数。工作正常。
不隶属于 StackOverflow