随笔 - 70  文章 - 1  评论 - 91  阅读 - 19万
06 2017 档案
[翻译] 编写高性能 .NET 代码--第二章 GC -- 减少大对象堆的碎片,在某些情况下强制执行完整GC,按需压缩大对象堆,在GC前收到消息通知,使用弱引用缓存对象
摘要:减少大对象堆的碎片 在某些情况下强制执行完整GC 按需压缩大对象堆 在GC前收到消息通知 使用弱引用缓存对象 阅读全文
posted @ 2017-06-24 17:40 yahle 阅读(1172) 评论(0) 推荐(0) 编辑
[翻译] 编写高性能 .NET 代码--第二章 GC -- 将长生命周期对象和大对象池化
摘要:将长生命周期对象和大对象池化 请记住最开始说的原则:对象要么立即回收要么一直存在。它们要么在0代被回收,要么在2代里一直存在。有些对象本质是静态的,生命周期从它们被创建开始,到程序停止才会结束。其它对象显然不需要永远存在下去,但他们的生命周期会存在程序的某些上下文里。它们的存活时间会超过0代(1代) 阅读全文
posted @ 2017-06-24 17:36 yahle 阅读(843) 评论(1) 推荐(0) 编辑
[翻译] 编写高性能 .NET 代码--第二章 GC -- 避免使用终结器,避免大对象,避免复制缓冲区
摘要:避免使用终结器 如果没有必要,是不需要实现一个终结器(Finalizer)。终结器的代码主要是让GC回收非托管资源用。它会在GC完成标记对象为可回收后,放入一个终结器队列里,在由另外一个线程执行队列里对象的终结器方法。这就意味着,如果你实现一个类的终结器,你必须保证在它在终结器执行后能被正常回收。这 阅读全文
posted @ 2017-06-24 17:33 yahle 阅读(619) 评论(0) 推荐(0) 编辑
[翻译] 编写高性能 .NET 代码--第二章 GC -- 减少分配率, 最重要的规则,缩短对象的生命周期,减少对象层次的深度,减少对象之间的引用,避免钉住对象(Pinning)
摘要:减少分配率 最重要的规则 缩短对象的生命周期 减少对象层次的深度 减少对象之间的引用 避免钉住对象(Pinning) 等一些在GC上的使用原则 阅读全文
posted @ 2017-06-07 09:40 yahle 阅读(878) 评论(0) 推荐(0) 编辑
[翻译] 编写高性能 .NET 代码--第五章 通用编码与对象设计 -- 类 vs 结构体
摘要:本章介绍了本书其它部分未涉及到的一些编码和设计原则。包含了一些.NET的应用场景,有些不会造成太大危害,有些则会造成明显的问题。剩下的则根据你的使用方法会产生不同的效果。如果要对本章节出现的原则做一个总结,那就是: **过度的优化会影响代码的抽象** 这意味着,当你希望更高的优化性能,你需要了解每个层次代码的实现细节。 阅读全文
posted @ 2017-06-01 10:22 yahle 阅读(1709) 评论(1) 推荐(1) 编辑

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

点击右上角即可分享
微信分享提示