This documentation is archived and is not being maintained.

Application Domains

Operating systems and runtime environments typically provide some form of isolation between applications. For example, Windows uses processes to isolate applications. This isolation is necessary to ensure that code running in one application cannot adversely affect other, unrelated applications.

Application domains provide an isolation boundary for security, reliability, and versioning, and for unloading assemblies. Application domains are typically created by runtime hosts, which are responsible for bootstrapping the common language runtime before an application is run.

This section explains how to use application domains to provide isolation between assemblies.

Application Domains Overview

Provides an overview of application domains.

Application Domains and Assemblies

Describes the relationship between application domains and assemblies.

Application Domains and Threads

Describes the relationship between application domains and operating system threads.

Programming with Application Domains

Describes how to program with application domains.

Hosting the Common Language Runtime

Describes how to create and configure application domains.

Runtime Hosts

Describes how to use a runtime host.