运行时异常不终止程序

sam*_*rth 0 java linux jar try-catch runtimeexception

根据我的一点点java知识程序应该在它抛出运行时异常后终止.

但是在我的应用程序抛出运行时异常后它没有终止,并且因为我在linux上执行它我必须使用ctrl + c来终止它,否则它只是不会终止.

我在windows sytem上创建jar并将其复制粘贴到linux中.

我也在我的应用程序中启用了日志记录.

更新: 我没有捕获任何异常没有使用多线程.

Joa*_*uer 12

一个RuntimeException(或任何 ExceptionThrowable)并没有必然终止您的应用程序.

只会终止您的应用程序,如果它被抛出在唯一的非守护程序线程上并且未被处理.

这意味着如果另一个非守护程序线程正在运行您捕获异常,则不会终止该应用程序.

我最近的回答总结了所发生的事情(具体是关于a OutOfMemoryError,但想法是一样的).