Customizing the Microsoft .NET Framework Common Language Runtime
|
Domain-neutral code is a feature of the CLR aimed at reducing the overall working set required by processes consisting of multiple application domains. The working set is reduced by sharing the jit-compiled code and other CLR runtime data structures for a given assembly across application domains. However, there are some restrictions placed on assemblies loaded domain neutral. For example, a domain-neutral assembly might only reference other domain-neutral assemblies. In addition, an assembly's dependencies must be exactly identical between application domains for the assembly's native code to be shared. The set of assemblies to load domain neutral is specified by a set of APIs provided by the .NET Framework and the CLR hosting interfaces. The most flexible, and therefore the most widely used, of these APIs is the GetDomainNeutralAssemblies method on the IHostControl interface. GetDomainNeutralAssemblies enables a host to specify the exact set of assemblies to be loaded domain neutral. |
|