标签:加锁 tran sync 选择 syn 核心 思想 了解 优化
1,假如有两个线程,一个线程A,一个线程B都会访问一个加锁方法,可能存在并发情况,但是线程B访问频繁,线程A访问次数很少,问如何优化。(然后面试官说有了解过重度锁和轻度锁吗)
a,竞争资源不激烈,选择Synchronized:
在资源竞争不是很激烈的情况下,Synchronized的性能要优于ReetrantLock,
但是在资源竞争很激烈的情况下,Synchronized的性能会下降几十倍,但是ReetrantLock的性能能维持常态;
b,优化,假设线程A和B不会并发访问,如果发生了并发,再膨胀为重量级锁:
轻量级锁的核心思想就是“被加锁的代码不会发生并发,如果发生并发,那就膨胀成重量级锁。
标签:加锁 tran sync 选择 syn 核心 思想 了解 优化
原文地址:http://www.cnblogs.com/my376908915/p/6888833.html