.NET の AppDomain
Windowsは、実行中のアプリケーション間のセキュリティとパフォーマンス分離の管理にプロセスを使用します。プロセスの分離により、アプリケーションの実行コードが別のアプリケーションを干渉することはありません。ただし、データを共有するアプリケーションの場合、Windows プロセス間でコールを行うと混乱やパフォーマンスの問題を引き起こすことがあります。AppDomainを使用すると、デベロッパーは1つのプロセス内で実行しながらアプリケーションの分離を維持できる複数アプリケーションを作成することができます。
単一のアプリケーションドメイン
1 つのアプリケーションがそのプロセス内で実行される場合は、ランタイムホストで AppDomain は管理されます。アプリケーションの実行可能ファイルの名前と AppDomain の名前は同じです。 .NET エージェントは、1 つの AppDomain 内にそれ自身をインストールし、アプリケーション用のノードを作成します。
複数のアプリケーションドメイン
デベロッパーがアプリケーションに複数のAppDomainを含めると、AppDomainはすべて単一のプロセス内で実行されます。アプリケーションの実行可能ファイルは、AppDomain の 1 つと同じ名前の場合もありますが、その他の AppDomain は独自の名前になります。デフォルトでは、エージェントはすべてのAppDomain内でインストールされ、それぞれらのノードを作成します。