【问题标题】:Xcode catch all uncaught exceptionsXcode 捕获所有未捕获的异常
【发布时间】:2012-10-02 03:58:43
【问题描述】:

在 Xcode 中我可以创建一个断点来捕获所有异常(异常断点)。然而,这个断点也会在 try-catch 情况下触发。

我正在使用第三方库,所以 try-catch 情况是事实,而不是选项。

有没有办法只处理未捕获的异常,而不是所有异常?

【问题讨论】:

    标签: xcode exception exception-handling breakpoints uncaught-exception


    【解决方案1】:

    您可以在线程的条目中放置一个顶级try/catch

    您可能还对NSSetUncaughtExceptionHandler感兴趣。

    通常,顶级处理程序在生产中几乎没有用处(您实际上并没有试图从您不准备处理的问题中恢复,但它可能对最后一句话或断点有用)。理想情况下,当且仅当您可以处理异常时,您将使用 try/catch 保护您从这些库接口的退出。要么,要么 nothrow 在开发过程中作为快速调试工具。

    如果您试图捕获 Cocoa 异常,那就让它死掉,然后将错误提交给任何认为 Cocoa 异常应该可以恢复的人。

    【讨论】:

    • 谢谢。我在 NSSetUncaughtExceptionHandler 上挖掘了一些信息:cocoawithlove.com/2010/05/…,供其他人阅读。
    • “通常,顶级处理程序在生产中几乎没有用处”根据我的经验,它们对于报告生产中的错误非常有价值。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-06
    • 2010-09-28
    • 2016-09-07
    • 1970-01-01
    • 1970-01-01
    • 2018-11-01
    相关资源
    最近更新 更多