托管代码(Managed Code)和非托管代码(Unmanaged Code)有什么区别
托管代码(Managed Code) 是由 公共语言运行库(CLR common lanaguage runtime)执行的代码,而不是由操作系统直接执行。托管代码也可以调用CLR的运行库服务和功能,比如GC、类型检查、安全支持等等。这些服务和功能提供独立与开发语言的,统一的Managed Code应用程序行为。
托管代码可以使用20多种支持.NET Framework的语言代码, 包括C#, J#, VB.NET, JScript.NET以及C++等等,这些语言贡献.net框架的类库,而且可以被编译成中间语言。 运行库编译器在托管执行环境下编译中间语言使这些语言成为可以执行的代码,并提供数组便见和索引检查,异常处理,垃圾回收等等功能以保证类型的安全。
使用托管代码可以避免很多程序的错误,同时也增强了程序代码的安全性。程序员可以花更多的时间在逻辑设计并减少代码量,同事也意味者缩短开发时间和提供更健壮的程序。
非托管代码不由CLR公共语言运行库执行,而是由操作系统直接执行的代码。 非托管代码必须自己提供垃圾回收,类型检查,安全支持等等服务。
托管代码可以使用20多种支持.NET Framework的语言代码, 包括C#, J#, VB.NET, JScript.NET以及C++等等,这些语言贡献.net框架的类库,而且可以被编译成中间语言。 运行库编译器在托管执行环境下编译中间语言使这些语言成为可以执行的代码,并提供数组便见和索引检查,异常处理,垃圾回收等等功能以保证类型的安全。
使用托管代码可以避免很多程序的错误,同时也增强了程序代码的安全性。程序员可以花更多的时间在逻辑设计并减少代码量,同事也意味者缩短开发时间和提供更健壮的程序。
非托管代码不由CLR公共语言运行库执行,而是由操作系统直接执行的代码。 非托管代码必须自己提供垃圾回收,类型检查,安全支持等等服务。
【托管代码(Managed Code)和非托管代码(Unmanaged Code)有什么区别】相关文章
1. 托管代码(Managed Code)和非托管代码(Unmanaged Code)有什么区别
2. static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别?
3. 什么叫应用程序域?什么是托管代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS和CLR分别作何解释?
4. OLEDBConnection和SQLConnection有什么区别
6. 当x.equals(y)等于true时,x.hashCode()与y.hashCode()可以不相等,这句话对不对
7. 什么是Connection-oriented Protocol/Connectionless Protocol面向连接的协议/无连接协议
8. mysql_pconnect()和mysql_connect()有什么区别
9. What\'s the difference between deep copy and shallow copy? (深拷贝与浅拷贝有什么区别)
10. int和Integer有什么区别
本文来源:https://www.mianshiwenti.com/a12789.html
进入下载页面
上一篇:什么是View State?
下一篇:什么是Smart Navigation?
﹝托管代码(Managed Code)和非托管代码(Unmanaged Code)有什么区别﹞相关内容
- 如何在Cookie里面保存Unicode和国际化字符
- System.Array.CopyTo()和System.Array.Clone()有什么区别
- 什么是用户模式(User Mode)与内核模式(Kernel Mode) ?
- const char*, char const*, char*const的区别是什么
- SQL Server提供的3种恢复模型都是什么? 有什么区别?
- PHP面试题-$message和$$message的区别
- 软件测试LoadRunner面试题:Explain the following functions: – lr_debug_message
- 静态成员和非静态成员的区别
- 解除劳动合同和除名有什么区别?
- 发生劳动纠纷后和解与调解有什么区别?