有志者、事竟成,破釜沉舟,百百二秦关终属楚;苦心人、天不负,卧薪尝胆,三千越甲可吞吴。

拂晓犬吠

学习中遇到困难是很正常的事情,不要苦恼,不要气馁,恰恰相反,应该兴奋,因为又学到知识了,需要不断提高自己应对问题和解决问题的能力和信心。

摘要: 因为CLR的托管堆,能避免前面提到的bug(内存泄漏和使用已释放的内存) 还能为开发人员提供一个简化的编程模型:分配并初始化资源并直接使用。 大多数类型都无需要资源清理,垃圾回收器会自动释放内存。 C#之所以不用释放内存,是因为由CLR中的垃圾回收器来释放内存。 阅读全文
posted @ 2021-05-26 11:26 ID拂晓犬吠 阅读(128) 评论(0) 推荐(0) 编辑
摘要: C++程序员要手动管理内存。 如果创建的内存,不使用了。没有释放内存,造成内存泄漏。 要试图使用,已经释放的内存,程序就会报错。 以上两个bug一般无法预测他们的后果或者时间。 什么是内存泄漏? 自己搜索一下,要是从表面上看,以为是内存漏了呢。 是程序中已动态分配的堆内存,由于某种原因未释放或者无法 阅读全文
posted @ 2021-05-26 09:51 ID拂晓犬吠 阅读(115) 评论(0) 推荐(0) 编辑
摘要: ①调用IL指令newobj,为代表资源的类型分配内存。 ②初始化内存,设置资源初始化状态并使资源可用。(类型的实例构造器负责设置初始状态) ③访问类型的成员来使用资源。 ④摧毁资源的状态已进行清理。 ⑤释放内存。垃圾回收器独自负责这一步。 阅读全文
posted @ 2021-05-26 09:25 ID拂晓犬吠 阅读(147) 评论(0) 推荐(0) 编辑
摘要: CLR via C#中的21章,托管堆和垃圾回收 开头,托管应用程序如何构造新对象,托管堆如何控制这些对象的生存期,以及如何回收这些对象的内存。 ①托管应用程序如何构造新对象; ②内存中如何控制这些对象的生存期; ③如何回收这些对象的内存。 继续摘抄书中的文字 在面向对象的环境中,每个类型都 代表可 阅读全文
posted @ 2021-05-26 09:19 ID拂晓犬吠 阅读(66) 评论(0) 推荐(0) 编辑