托管与非托管

  这里说说自己对托管和非托管的认识。

一:从字面上看,托管就是委托别人管理。就像你委托保姆做饭,打扫卫生等。你不用亲力亲为的去做,但是享受了这些服务。非托管嘛,就是你要亲力亲为了。是个很勤快的人,什么都得关心。

二:在.NET FRAMEWORK中,托管就是把事情留给CLR(公共语言运行时)去做,这个是CLR自己帮你做的,你根本不用关心。他帮你做了哪些呢?有类型安全检查,内存管理,垃圾回收等。你可能看到这些抽象的名字,不知道他做了什么。我这里只讲一下内存管理。你要是接触过C++,你可能知道,C++里有指针,他可以直接操作内存的。而在C#里,没有了指针,你不能直接操作内存,而是间接的。这个间接是怎么实现的呢?他就是通过CLR。什么是非托管呢?就是你自己去操作内存,不用CLR来插一脚。现在.net里的语言一般是托管语言,你在里面编程,编译后就成了托管模块。而C++是非托管语言。

三:但是托管模块中也可能有非托管的内容。非托管的内容,比如WINDOWS API,非托管COM等。你在.NET环境中,引用WINDOWS API,非托管COM,就会导致托管模块中有非托管模块了。

四:托管的内容,要通过CLR和windows交流。而非托管的内容可以直接和windows交流。

转载于:https://www.cnblogs.com/doosmile/archive/2010/11/28/1890108.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值