托管代码与非托管代码的区别

实际上是知道这个东西,可是不知道专业术语竟然叫这个,我觉得是Azure云托管,好吧,开个玩笑java

不止C#,java也是托管代码啊,重点,重点,重点!!!安全

1.简单的说,就是代码被编译成MSIL后在.net的Framework下运行,同操做系统底层的交互都交给framework去作。所谓非托管代码就是脱离了Framework的管制,操作系统

直接同底层API打交道,本身管理本身的内存和安全机制等东西。而托管代码就无论这些,全都由Framework去完成

2.“程序”通常都是在对操做系统进行直接或者间接的操做
“托管程序”是须要经过访问公共语言运行时(cls)才能访问操做系统的程序
而“非托管程序”不用经过访问公共语言运行时(cls)能够直接访问操做系统的程序

3.vb.net,C#等写的程序是托管程序,VC++能够写托管程序,若是用到了内存管理,则只能编译为非托管程序这些东西MSDN都有描述.net

相关文章
相关标签/搜索