什么是非托管DLL?什么是非托管代码?

时间:2010-09-28 15:35:14

标签: dll unmanaged managed

有人可以向我解释一下un /托管的DLL是什么吗?什么是非托管代码?

4 个答案:

答案 0 :(得分:8)

简答:代码编译时没有.NET框架(普通的旧DLL)。

答案 1 :(得分:7)

未编码的代码将被编译为机器语言,以便直接在硬件上运行。

托管代码将被编译为名为CLR(公共语言运行时)的虚拟机,并在JIT(即时编译器)启动时编译为机器语言。 CLR可以与java虚拟机进行比较,它是相同的概念。

答案 2 :(得分:6)

答案 3 :(得分:4)

使用.net进行编码时,会得到一些内存管理,垃圾回收等,因此称为托管代码。 旧版本不受管理(内存由程序员管理)

为了简单起见,从托管代码到非托管代码的调用可能会让人感到痛苦。