您的位置:首页 > 其它

软件构造期末总结第八章

2019-06-23 23:24 190 查看

8.1 Metrics, Principles, and Methods of Construction for Performance
(1)性能度量指标:时间性能和空间性能
(2)内存管理:对象管理模型:静态、堆、栈
(3)内存回收的三种方式:
静态模式下的内存回收:在静态内存分配模式下,无需进行内存回收:所有都是已确定的。
在栈模式下的内存回收:按block(某个方法)整体进行
在堆模式下的内存回收:在heap上进行内存空间回收,最复杂——无法提前预知某个object是否已经变得无用。
(4)GC的四种算法:
Mark-Sweep算法
基本思想:为每个object设定状态位并记录;将标记为dead的对象进行清理。
Copying(复制)算法
基本思想:将可用内存按容量划分为大小相等的两块,每次只使用其中的一块。当这一块的内存用完了,就将对象复制到另外一块,再把已使用的内存空间一次清理掉。
引用计数
基本思想:为每个object存储一个计数RC,当有其他 reference指向它时,RC++;当其他reference与其断开时,RC–;如 果RC==0,则回收它。
Mark-Compact算法
基本思想:该算法标记阶段和Mark-Sweep一样,但是在完成标记之后,它是将存活对象都向一端移动,然后清理掉端边界以外的内存。

8.2 Dynamic Program Analysis Methods and Tools
java性能调优工具:jhat, jmap, jstat, jstack ,JConsole ,Visual VM,Memory Analyzer (MAT)

8.3 Code Tuning for Performance Optimization
(1)调优代码的设计模式
单例模式:某些类在应用运行期间只需要一个实例。
享元模型:用场景: 1、系统有大量相似对象。 2、需要缓冲池的场景
原型模式:是用于创建重复的对象,同时又能保证性能。
对象池模式:用对象池化技术可以显著地提升性能,尤其是当对象的初始化过程代价较大或者频率较高时。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: