什么是.NET应用程序域?

8

什么是应用程序域(AppDomain),它与进程或线程有何不同?


1
可能是重复的问题:我不理解应用程序域 - Ian Goldby
2个回答

6
请看MSDN
应用程序域提供更安全和多用途的处理单元,公共语言运行时可用于在应用程序之间提供隔离。您可以在同一个进程中运行多个应用程序域,其隔离级别与在不同进程中存在的隔离级别相同,但不必承担跨进程调用或进程切换的额外开销。在单个进程中运行多个应用程序的能力极大地增加了服务器的可伸缩性。
AppDomain基本上是托管代码的隔离执行环境。

1
+1 可以将其视为“轻量级进程”,这样通常就足够了。 - No Refunds No Returns

2

应用程序域是代码可以运行的“空间”段。它可用于多种情况,例如在加载您不完全信任的程序集时创建沙盒。与线程/进程不同的是,它仅包含正在执行的代码,而不是实际被执行的代码。从广义上讲,您可以将任何应用程序视为应用程序域。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接