Creating Application Domains:
Application domain is just like process, provides separate
memory space, and isolates from other code. But it’s quite light weight. It
also provides the following advantages:
1-
Reliability:
If a domain crashes, it can be
unloaded. Hence doesn’t affect the other assemblies.
2-
Efficiency:
Loading all assemblies in one domain
can be cumbersome and can make the process heavy but Appdomains are efficient
in this manner.
Important properties of AppDomain:
ApplicationIdentity, ApplicationTrust, BaseDirectory,
CurrentDomain, DomainManager,
DomainDirectory, Evidence,
FriendlyName, ID,
RelativeSearchPath, SetupInformation,
ShadowCopyFiles.
Important methods of AppDomain:
ApplyPolicy, CreateCOMInstanceFrom, CreateDomain,
CreateInstance (Assembly).
To create an AppDomain:
AppDomain adomain =
AppDomain.CreateDomain(“D”);
To execute an assembly:
adomain.ExecuteAssembly(“assembly.exe”);
OR adomain.ExecuteAssemblyByName(“Assembly”);
To unload an domain:
AppDomain.Unload(d);
Comments