1

アプリケーションドメインの概念について少し知っています。appdomain を削除して、dll をアンロードできます。例外処理を改善するために appdomain を使用することは可能ですか? どのように使用できますか?

4

1 に答える 1

1

私の知る限り、モジュールを子にロードしても、AppDomains例外処理は改善されません。AppDomain.UnhandledException イベントの MSDN ページでは、次のように述べています。

.NET Framework バージョン 2.0 以降では、子スレッドで未処理の例外に対するこのバックストップが削除されました。これは、このようなサイレント エラーの累積的な影響には、パフォーマンスの低下、破損したデータ、およびロックアップが含まれ、これらはすべてデバッグが困難であったためです。

これは、コードが子 AppDomain で実行されたとしても、子スレッドで未処理の例外が発生すると、プロセス全体が停止することを意味します。

通常、子AppDomainsは、言及したアセンブリのアンロード機能と、サンドボックス (制限されたセキュリティ環境) でコードを実行するために使用されます。

于 2013-05-14T13:03:04.150 に答える