**
synchronized关键字的性能调优
关于synchronized关键字在处理线程时常常会用到,主要是解决死锁问题,下面就介绍下synchronized的性能,首先创建一个抽象类
abstract class Incrementable{
protected long counter = 0;
public abstract void increment();
}
这样就有一个抽象的类了,然后我们用到Lock类来对比synchronized关键字的性能
如下
然后进行相关的测试:
我们得出数据如下:
synchronized:7244ms
Lock: 21317ms
Lock/synchronized=2.943%
synchronized:787ms
Lock: 2268ms
Lock/synchronized=2.882%
synchronized:83ms
Lock: 219ms
Lock/synchronized=2.639%
synchronized:18ms
Lock: 32ms
Lock/synchronized=1.778%
synchronized:3ms
Lock: 7ms
Lock/synchronized=2.333%
经过多轮测试可以分析得出足足快了百分之2点多