微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

.NET中托管代码和非托管代码的区别

托管代码是由 .NET Framework 中的 CLR(公共语言运行时)管理的代码。而非托管代码是由操作系统直接执行的代码。以下是托管代码和非托管代码间的一些重要区别:

托管代码 非托管代码
由托管运行时环境执行或由 CLR 管理。 由操作系统直接执行。
为用 .NET Framework 编写的应用程序提供安全性。 不为应用程序提供任何安全性。
不会发生内存缓冲区溢出。 可能会发生内存缓冲区溢出。
提供垃圾收集、异常处理等运行时服务。 不提供垃圾收集、异常处理等运行时服务。
代码是用称为 IL 或 MSIL 或 CIL 的中间语言编译的。 代码直接编译成本地语言。
不提供对程序员的低级访问。 提供对程序员的低级访问。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐