問題タブ [uncaughtexceptionhandler]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1810 参照

java - UncaughtExceptionHandler が例外メッセージを変更する

小さな例:

期待どおりに以下を出力します。

このプログラムを変更しましょう:

版画:

質問:

メッセージが発生した場所に関する情報が含まれておらず、スタック トレース、メッセージがないのはなぜですか?

私にとっては、例外メッセージは奇妙に見えます。

0 投票する
1 に答える
130 参照

java - 安全にキャッチできる java.lang.Error の子孫はどれですか?

通常、Java プログラムは-s likeをキャッチThrowableしているため、 をキャッチすべきではないということは、私にはまったく明らかです。100%クリア。ErrorOutOfMemoryError

しかし。

マルチスレッド アプリケーションを使用している場合、通常はベストUncaughtExceptionHandlerプラクティスRuntimeExceptionですError。私が通常やりたいことは、単にログを記録することです。ロギングRuntimeExceptionsは本当に害になることはありません。それは明らかです。しかし、私の中で疑問が生じます:

UncaughtExceptionHandler で安全にキャッチしてログに記録できるエラーのうち、ログに記録するとアプリケーション全体が処理されないエラーはどれですか? アプリケーションをすぐに停止する必要があるという意味ではない、どのエラーがありますか?

たとえば、 を取得した場合、ログに記録するために必要なメモリによって他のスレッドが強制終了される可能性があるため、標準出力に をOutOfMemoryError要求するだけです。printStackTraceしかし、現在のスレッドのスタック領域がいっぱいになったことを単純に意味するため、StackOverflowErrorログに記録しても完全に安全だと思われます。ログに記録することは安全です。他にどのError子孫をログに記録しますか?

0 投票する
1 に答える
429 参照

java - ExceptionHandler サブクラスからアプリケーションを安全に終了できますか?

私はJavaだけでなくAndroidも初めてです。できるだけ具体的になるように最善を尽くします。

ExceptionHandlerdefault を実装するサブクラスとともに、1 つのアクティビティと複数のフラグメントとクラスを持つアプリがありますUncaughtExceptionHandler。私は正常に使用できました:-

Thread.setDefaultUncaughtExceptionHandler(new ExceptionHandler(this));

未処理の例外が発生した場合に、"ForceClose"ポップアップを表示せずにアプリケーションを終了します。私は使用しますSystem.exit(0)。アプリケーション全体でログを記録しています。ExceptionHandler サブクラスからの例外をログに記録できます。

さて、私の問題はonPause()onStop()アプリケーションonDestroy()MainActivity.

ExceptionHandlerサブクラスを使用してアプリケーションを終了するときにこれを行うにはどうすればよいですか?