代码之家  ›  专栏  ›  技术社区  ›  PaulMcG

如何捕获CTypes中抛出的异常?

  •  2
  • PaulMcG  · 技术社区  · 14 年前

    我正在使用一些使用ctypes从python调用的C代码。在C库的内部某个地方,正在发生异常并/或正在调用abort()。在我的python调用程序代码中,有什么方法可以捕捉到这一点吗?(平台为Linux)

    1 回复  |  直到 14 年前
        1
  •  3
  •   ThiefMaster    14 年前

    您可以在sigabrt上设置信号处理程序来处理由abort()引起的信号。 然而,失败的断言可能伴随着损坏的内存和其他不好的事情——断言失败通常是有原因的。因此,通常终止应用程序是您能做的最好的事情(除了在终止之前在处理程序中显示/记录错误)。