質問

関連:


メソッドがThreadPool.QueueUserWorkItemメソッドによって呼び出される例外をスローする場合、例外はどこでスローされますか?それともただ食べられますか?

つまり、呼び出し元のスレッドには決してスローされないということですか?


役に立ちましたか?

解決

いいえ、例外は別のスレッドに伝播しません。最終的にスレッドをクラッシュさせ、ランタイムにキャッチされます。この時点で、ランタイムはAppDomain.UnhandledExceptionイベントを発生させ、そこで例外を監視できます。

このこちらの詳細をご覧ください。

他のヒント

スレッドコールバック内でキャッチされない場合、例外はアプリケーションをクラッシュさせます(飲み込まれたThreadAbortExceptionとAppDomainUnloadedExceptionを除く)。 .NET 1.1では、すべての例外が飲み込まれたことに注意してください。動作は.NET 2.0で変更されました。

このリンクを見つけました: http://msdn.microsoft.com/ en-us / library / ms228965.aspx

未処理の例外は、.Net 2.0以降でアプリをダウンさせます。 QUWIコードからの例外はキャッチされず、別のスレッドに転送されません。

をご覧ください。 https://blog.codinghorror.com/improved-unhandled -exception-behavior-in-net-20 /

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top