ドメインのアンロードとプロセスのシャットダウン
アプリケーション ドメインは、プロセス全体を停止せずにアンロードできます。 ホストはこの機能を利用して、不要になったコードをアンロードできます。これによって、メモリの使用量を減らし、アプリケーションのスケーラビリティを向上させることができます。
System.AppDomain クラスには、ホストが特定のアプリケーション ドメインをアンロードするために使用できる Unload という名前の静的メソッドが含まれています。 AppDomain.Unload は、アクティブなスレッドがなくなるまでアプリケーション ドメインをアンロードせずに、正常なシャットダウンを実行します。
既定のアプリケーション ドメインに読み込まれたアセンブリ、またはアプリケーション ドメイン中立で読み込まれたアセンブリは、プロセス全体をシャットダウンするまでアンロードできません。
.NET Framework Version 1.0 および 1.1 では、ICorRuntimeHost::Stop メソッドを使用してランタイムを無効にします。
.NET Framework Version 2.0 では、ICLRRuntimeHost::Stop メソッドを使用してプロセスで共通言語ランタイムを無効にします。 ICLRRuntimeHost::Stop メソッドがプロセスで呼び出されると、そのプロセス内でランタイムを再起動することはできません。 ICLRRuntimeHost::Start メソッドが呼び出されるたびに、ICLRRuntimeHost::Stop が 1 回呼び出される必要があります。