什么叫应用程序域?什么是受管制的代码?什么是强类型系统?什么是装箱和拆箱?


Posted in 面试题 onAugust 13, 2016
答案:应用程序域:一种边界,它有公共语言运行库围绕同一应用程序范围内创建的对象建立(即,从应用程序入口点开始,沿着对象激活的序列的任何位置)。应用程序域有助于将在一个应用程序中建立的对象在其他应用程序中创建的对象隔离,以使运行时行为可以预知。在一个单独的进程中可以存在多个应用程序域。以前使用进程边界来隔离在同一台计算机上运行的应用程序。每一个应程序被加载到单独的进程中,这样就将该应用程序与同一台计算机上运行的其他应用程序相隔离。隔离这些应用程序的原因在于内存地址是与进程相关的;在目标进程中,不能通过任何有意义的方式使用一个进程传递到另一个进程的内存指针。此外,您不能在两个进程间进行直接调用。您必须代之以使用代理,它提供一顶程度的饿间接性。托管代码必须先通过一个验证过程,然后才能运行(除非管理员已授权跳过该验证)。次验证过程以下内容:这些代码是否会尝试访问无效的内存地址?是否会尝试执行某些导致进程(该代码运行时所在的进程)无法正常进行的其他操作?通过次验证测试的代码将被人是类型安全的。由于公共语言运行库嫩能够够验证代码是否为类型安全的代码,所以它可以提供与进程边界一样大的隔离级别,而其性能开销在则要低得多。应用程序域提供安全而通用的处理单元,公共语言运行库可使用它来提供应用程序之间的隔离。您可以在具有同等隔离级别(存在于单独的进程中)的但个进程中运行几个应用程序域,而不会造成进程间切换等方面的额外开销。在一个进程内运行多个应用程序的能力显著增强了服务器的可伸缩性。隔离应用程序对于应用程序安全也是十分重要。例如,您可以在单个浏览器进程中运行几个Web应用程序的控件,同时使这些控件不能访问彼此的饿数据和资源。
应用程序域所提供的隔离具有以下优点:在一个应用程序中出现的错误不会影响其他以内功用程序。因为类型安全的代码不会导致内存错误,所以使用应用程序宇可以确保在一个域中运行的代码不会影响进程中的其他应用程序。能够在不停止整个进程的情况下停止单个应用程序。使用应用程序域使您可以卸载在单个应用程序中运行的代码。注意 不能卸载单个程序集或类型。只能卸载整个域。在一个应用程序中运行的代码不能直接访问其他应用程序中代码或资源。为了强制实施此隔离,公共语言运行库禁止在不同应用程序域中的对象之间进行直接调用。要在个域之间传递对象,可以复制这些对象,或通过代理访问这些对象。如果复制对象,那么对该对象的调用为本地调用。也就是说,调用方和被引用的对象位于同一应用程序域中。如果通过代理访问对象,那么对该对象的调用为远程调用。在此情况下,调用方和被引用的对象位于不同的应用程序域中。域间调用所采用远程调用结构与两个进程间的调用或两台计算机间的调用结构相同。代码行为的作用范围由它行为所在的应用程序决定。换言之,应用程序域将提供应用程序版本策略等配置设置、它所访问的任意远程程序集的位置,以及加载到该域中的程序集的位置信息。受管制的代码:在CLR虚拟机中运行的代码。强类型语言:如c/c++就是各种变量在各自的饿作用域使用之前都要由开发者定义类型,并交由编译器分配内存空间。装箱,就是把值转为引用类型。反之应用转为值

Tags in this post...

面试题 相关文章推荐
static函数与普通函数有什么区别
Dec 25 面试题
当我正在为表建立索引的时候,SQL Server 会禁止对表的访问吗
Apr 28 面试题
为什么UNION ALL比UNION快
Mar 17 面试题
程序集与命名空间有什么不同
Jul 25 面试题
C#笔试题
Jul 14 面试题
使用C#编写创建一个线程的代码
Jan 22 面试题
一套C#面试题
Oct 09 面试题
简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程
Apr 17 面试题
说说在weblogic中开发消息Bean时的persistent与non-persisten的差别
Apr 07 面试题
swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?
Mar 30 面试题
Java中的异常处理机制的简单原理和应用
Apr 27 面试题
Hibernate持久层技术
Dec 16 面试题
某公司的.net工程师面试题笔试题
Nov 22 #面试题
什么是重载?CTS、CLS和CLR分别做何解释
May 06 #面试题
CLR与IL分别是什么含义
Aug 23 #面试题
某公司.Net方向面试题
Apr 24 #面试题
什么是WEB控件?使用WEB控件有哪些优势?
Jan 21 #面试题
北京天润融通.net面试题笔试题
Feb 20 #面试题
WEB控件可以激发服务端事件,请谈谈服务端事件是怎么发生并解释其原理?自动传回是什么?为什么要使用自动传回?
Feb 21 #面试题
You might like
PHP编写文件多服务器同步程序
2016/07/02 PHP
浅谈php中的访问修饰符private、protected、public的作用范围
2016/11/20 PHP
PHP给源代码加密的几种方法汇总(推荐)
2018/02/06 PHP
PHP使用pdo连接access数据库并循环显示数据操作示例
2018/06/05 PHP
Laravel5.5 实现后台管理登录的方法(自定义用户表登录)
2019/09/30 PHP
asp javascript 实现关闭窗口时保存数据的办法
2007/11/24 Javascript
JS编程小常识很有用
2012/11/26 Javascript
Jquery+CSS3实现一款简洁大气带滑动效果的弹出层
2013/05/15 Javascript
JavaScript识别网页关键字并进行描红的方法
2015/11/09 Javascript
js运动应用实例解析
2015/12/28 Javascript
理解javascript中的严格模式
2016/02/01 Javascript
json对象转为字符串,当做参数传递时加密解密的实现方法
2016/06/29 Javascript
js通过classname来获取元素的方法
2016/11/24 Javascript
JQuery Ajax 异步操作之动态添加节点功能
2017/05/24 jQuery
详解在AngularJS的controller外部直接获取$scope
2017/06/02 Javascript
jQuery图片缩放插件smartZoom使用实例详解
2017/08/25 jQuery
浅谈微信JS-SDK 微信分享接口开发(介绍版)
2018/08/15 Javascript
vue + any-touch实现一个iscroll 实现拖拽和滑动动画效果
2019/04/08 Javascript
Vue.js实现可编辑的表格
2019/12/11 Javascript
如何在Python中编写并发程序
2016/02/27 Python
python django事务transaction源码分析详解
2017/03/17 Python
numpy.transpose对三维数组的转置方法
2018/04/17 Python
如何导出python安装的所有模块名称和版本号到文件中
2020/06/05 Python
python产生模拟数据faker库的使用详解
2020/11/04 Python
影视动画专业个人的自我评价
2013/12/31 职场文书
求职信的最佳写作思路
2014/02/01 职场文书
生物科学专业毕业生求职信
2014/06/02 职场文书
领导干部四风问题自我剖析材料
2014/09/25 职场文书
2014最新预备党员思想汇报范文:中国梦,我的梦
2014/10/25 职场文书
2014年校务公开工作总结
2014/12/18 职场文书
离婚上诉状范文
2015/05/23 职场文书
2015年新农村建设指导员工作总结
2015/07/24 职场文书
家长会后的感想
2015/08/11 职场文书
分析Python list操作为什么会错误
2021/11/17 Python
如何优化vue打包文件过大
2022/04/13 Vue.js
vscode内网访问服务器的方法
2022/06/28 Servers