作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
特别是,在两个不同的应用程序域中运行代码有何影响?
数据通常如何跨应用程序域边界传递?它与跨进程边界传递数据相同吗?我很想更多地了解这个抽象及其用途。
编辑: AppDomain 类的现有覆盖范围一般在 I don't understand Application Domains
最佳答案
安AppDomain基本上提供了一个隔离区域,其中代码在进程内部运行。
一种简单的方式来思考它几乎就像是主进程中的一个轻量级进程。每个 AppDomain 都完全隔离地存在于一个进程中,这使您可以安全地运行代码(如果需要,可以在不拆除整个进程的情况下卸载代码),并具有单独的安全性等。
至于您的具体情况 - 如果您在一个进程内的 2 个不同的 AppDomain 中运行代码,则该代码将独立运行。 AppDomain 之间的任何通信都将通过 MarshallByRefObject 进行序列化或处理。在这方面,它的行为非常类似于使用远程处理。这提供了巨大的安全性 - 您可以运行您不信任的代码,并且如果它出错,也不会影响您。
MSDN 对 Application Domains 的描述中有更多详细信息。 .
关于.net - 什么是 .NET 应用程序域?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1094478/
我是一名优秀的程序员,十分优秀!