托管代码是被CLR(Common RunTime Library)托管并且被监视了的代码,这些代码由于受到CLR监视所以他们不会出一些错误(错误例如Buffer溢出),例如如果一个Buffer的最大的长度是50字节的话,那么如果你往里面写100个字节内容的时候,CLR就会发现这个错误并且做出更正。
非托管代码并没有上面的CLR对其进行监视,所以很可能会出现一些错误。
托管代码:有一些事情系统已经为你做好了对其的处理,例如垃圾回收
非托管代码:系统不知道该如何对其进行操作,这些操作需要你自己来写,例如:.net不知道非托管代码的垃圾回收是如何进行的,所以这部分的垃圾回收需要自己来写