Java中的全局异常处理程序

我正在考虑使用Thread.setDefaultUncaughtExceptionHandler(...)调用为我的(Android)移动应用程序(使用Java语法)设置全局默认异常处理程序。 我正在考虑仅向用户显示带有适当消息的警报对话框。

在设置DefaultExceptionHandlers是否需要遵守一些常见问题,注意事项和规则? 像确保进程被终止,完整的堆栈跟踪写入日志等任何最佳实践?

欢迎提供有关此文档,教程等的链接,以便对此有所了解。

谢谢。


  • 名称有点误导,因为使用该方法将为所有线程设置默认的异常处理程序。
  • 确保没有异常可以从异常处理程序中抛出。
  • 如果你从异常处理程序中执行GUI,请确保从正确的线程执行。
  • 未捕获的异常只会停止发生异常的线程,如果这也导致进程终止,则取决于可能正在运行的任何其他线程。

  • 创建全局异常处理程序的一个可能的问题是您可能会陷入异常循环 - 除非程序终止,否则一些异常将被重复抛出。

    如果你的意思是当抛出一个异常时,显示一条消息,然后应用程序终止,那么你会没事的。

    链接地址: http://www.djcxy.com/p/897.html

    上一篇: Global Exception Handlers in Java

    下一篇: Map Custom URL protocol to HTTP (using NSURLProtocol?)