笔记:Java 性能优化权威指南 第6章 Java 应用性能分析技巧

本文介绍了一系列Java性能优化的方法,包括采用高效算法、减少锁竞争、使用ConcurrentHashMap替代Hashtable等现代并发工具、优化数据结构大小及提高代码并行性等方面的内容。

一、性能优化的类型

1、使用更高效的算法

2、减少锁竞争

3、为算法生成更有效率的代码


二、CPU的使用

用BufferedOutputStream 替代直接的 FileOutputStream

利用缓冲、NIO改善磁盘与网络的IO瓶颈。  


三、锁竞争

利用ConcurrentHashMap 替代 Hashtable,java.util.concurrent.包中的类替代旧的同步类

利用原子类的CompareAndSet 操作替代旧的 synchronized 块,因为它是由专用的CPU指令完成的。 

利用ThreadLocal ,不为每个线程生成一个对象。


四、volatile 的使用

volatile很耗资源,不可滥用。


五、调整数据结构的大小

为StringBuffer、StringBuilder 指定初始容量,避免容量调整时候要将数据复制到新数组、废弃老数组。

为List、Set、Map指定初始容量,避免容量调整时候要将数据复制到新数组、废弃老数组。


六、增加并行性

使用多线程增加并行性。使用线程池ExecutorService复用线程。


七、过高的CPU使用率


八、其他有用的分析提示



转载于:https://www.cnblogs.com/leeeee/p/7276245.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值