What is a .NET Application Domain?
Asked Answered
P

2

8

What is exactly is an Application Domain (AppDomain) and how is it different than a process or thread?

Parable answered 3/3, 2010 at 3:15 Comment(1)
Possible duplicate of I don't understand Application DomainsOeflein
C
6

See MSDN.

Application domains provide a more secure and versatile unit of processing that the common language runtime can use to provide isolation between applications. You can run several application domains in a single process with the same level of isolation that would exist in separate processes, but without incurring the additional overhead of making cross-process calls or switching between processes. The ability to run multiple applications within a single process dramatically increases server scalability.

An AppDomain is basically an isolated execution environment for managed code.

Coralyn answered 3/3, 2010 at 3:17 Comment(1)
+1 Think of it as a "lightweight process" and you'll usually be close enough.Normi
E
2

An application domain is the "space" segments of code can run in. It can be used for a couple of things such as creating a sandbox when loading assemblies that you don't fully trust. It's different than a thread/process in that it houses the code that is being executed instead of actually being executed code. In a broad sense you can think of any application as an application domain.

Eastwardly answered 3/3, 2010 at 3:18 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.