摘要:
1. 为什么会有自动垃圾回收(garbage collection)?非托管编程时,内存管理是一件很头疼的事情。首先,如果程序员忘记释放不再需要的内存,或者试图使用已被释放的内存,会造成无法预测的后果;其次,正确进行资源管理通常很难而且很枯燥,它会极大分散开发人员的注意力,使之无法专注于真正要解决的问题。2. 垃圾回收简介垃圾回收使开发人员得到了解放,程序员不必再考虑内存管理,这一切交给垃圾回收器完成。每次使用new运算符(对应的是 IL的newobj指令)创建对象时,运行库都从托管堆为该对象分配内存。只要托管堆中有地址空间可用,运行库就会继续为对象分配空间。但是,内存不是无限大的。最终,垃圾 阅读全文