AppDomains ("application domains")
If you haven’t seen Chris Brumme’s explanation of AppDomains, you owe it to yourself to take a look. It’s an older link (posted in June of last year), but well worth re-posting:
An AppDomain is a light-weight process. Well, if you actually measure the costs associated with an AppDomain – especially the first one you create, which has some additional costs that are amortized over all subsequent ones – then “light-weight” deserves some explanation:
A Win32 process is heavy-weight compared to a Unix process. A Win32 thread is heavy-weight compared to a Unix thread, particularly if you are using a non-kernel user threads package on Unix. A good design for Windows will create and destroy processes at a low rate, will have a small number of processes, and will have a small number of threads in each process.
…[lots of good stuff]…
But even I think this blog is getting way too long.
It is a long post, but worth it if you want to better understand how AppDomains operate.