【问题标题】:Handling uncaught exceptions in unaccessible Java Thread [closed]在无法访问的 Java 线程中处理未捕获的异常 [关闭]
【发布时间】:2021-05-14 08:44:15
【问题描述】:

我在我的项目中使用JavaSoundAudioIO,它启动了自己的线程。如果它认为所选的混音器不合适,它会抛出一个UnsupportedArgumentException,这将使程序崩溃。我怎样才能捕捉到这个异常?我不能真正将异常处理程序直接附加到该线程,因为我没有对它的引用。我尝试在我的主线程中使用Thread.setDefaultUncaughtExceptionHandler,但这似乎对 JavaSound 线程没有任何作用。

【问题讨论】:

  • 你能显示异常的确切堆栈跟踪吗?
  • 另外,您能否展示一下您使用JavaSoundAudioIO 的代码行(这会导致该线程在您背后启动)以及您尝试使用Thread.setDefaultUncaughtExceptionHandler 的情况?
  • 在下面查看我的答案,这实际上是 Eclipse 调试器的问题。

标签: java multithreading exception uncaughtexceptionhandler


【解决方案1】:

我刚刚发现 Eclipse 调试器正在捕获异常并在它可以到达异常处理程序之前停止执行。在 Preferences>Java>DebugThread.setDefaultUncaughtExceptionHandler 中停用此行为作为有意的。

【讨论】:

    猜你喜欢
    • 2011-05-20
    • 2021-09-13
    • 2012-06-07
    • 1970-01-01
    • 2010-11-28
    • 1970-01-01
    • 2013-03-09
    • 1970-01-01
    • 2013-10-25
    相关资源
    最近更新 更多