私はリフレクションを使用して他のアセンブリからオブジェクトをインスタンス化しています。これらのアセンブリ内のオブジェクトは、処理の過程で他のスレッドを開始することがあります。このアセンブリの作成者は、これらのワーカースレッドの例外を正しく処理できない可能性があります。 問題は、処理されずに返されると、アプリケーション全体が終了し、AppDomain.CurrentDomain.UnhandledException
がトリガーされることです。ワーカースレッドが処理しなかった場合、メインスレッドを続行します
処理する方法はあり
私はtry...catch
に私のメソッド呼び出しをラップするだけで試してみたが、それは例外をキャッチしていないようですが(次のワーカースレッドは、実際の障害のあるスレッドで生成されたとして理にかなっています)開発者がすべての例外を正しく処理することを強制することなく、このような状況になっていますか?
このアイデアは、Windowsサービスの仕組みと似ています。ただ1つのアプリケーションが失敗したからといって、Windowsサービスホストもクラッシュするというわけではありません。
ここには何が欠けていますか?