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

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

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

    推荐阅读