问大家个问题? 托管代码和非托管代码到底是什么
网上说
源代码在运行时分为两个阶段:1.源代码编译为托管代码,2.托管代码编译为microsoft的平台专用语言。
这句话对不对? 代码不是都编译成了dll文件吗?
托管代码又和dll文件有什么区别?
非托管代码又是什么?
网上说 非托管代码必须提供自己的垃圾回收等? 像网络连接,数据库连接,文件流 这种需要手动释放资源的代码,是非托管代码吗?
对于 .NET 平台,运行在 CLR 之上(托)被 CLR 管理(管)的代码叫托管代码 C# 源代码编译出来的是 IL 代码 .dll 只是文件扩展名,.NET 的 .dll 文件(程序集)其中保存的是 IL 代码,在运行的时候 IL 代码被动态编译为机器语言
那非托管代码呢?网络连接,数据库连接,文件流 这种是非托管代码吗?
托管与非托管