ReentrantLock简介 Reentrantlock是一个可重入的互斥锁,又被称为独占锁。 Reentrantlock:分为公平锁和非公平锁,它们的区别体现在获取锁的机制上是否公平。“锁”是为了保护竞争资源,防止多个线程同时操作线程而出错,ReentrantLock在同一个时间点只能被一个线程 ...
分类:
编程语言 时间:
2017-05-31 00:22:22
阅读次数:
193
java中的锁,可以分为同步锁和JUC包中的锁。 同步锁 通过synchronized关键字进行同步,实现对竞争资源的互斥访问的锁,。 原理:对于每一个对象,有且只有一个同步锁,在同一时间点,所有的线程中有且只有一个能获取该同步锁,获取到同步锁的就可以被CPU进行调度,其他线程必须等待,直到获取到同 ...
分类:
编程语言 时间:
2017-05-30 21:51:33
阅读次数:
218
硬件环境: CPU:AMD Phenom(tm) II X4 955 Processor Memory:8G SSD(128G):/ HDD(1T):/home/ 软件环境: OS:Ubuntu14.04.3 LTS Java:JDK1.7 关于ReentrantLock中非公平锁和公平锁详细区别以 ...
分类:
其他好文 时间:
2017-05-25 01:20:37
阅读次数:
262
ReentrankLock 分为 非公平锁及公平锁 首先我们看一下它里面有哪些属性: tryAcquire方法中,先 判断当前state值是否是0,若为0 ,则可进行尝试加锁。若不为0,判断作这个加锁操作的是否为当前线程,若为当前线程,则直接累加,然后更新state值 setExclusiveOwn ...
分类:
其他好文 时间:
2017-05-24 00:53:03
阅读次数:
198
非公平锁和公平锁在获取锁的方法上,流程是一样的;区别主要表现在“尝试获取锁的机制不同”。“公平锁”在每次尝试获取锁时,都是采用公平策略(根据等待队列依次排序等待);而“非公平锁”在每次尝试获取锁时,都是采用的非公平策略(无视等待队列,直接尝试获取锁,如果锁是空闲的,即可获取状态,则获取锁)。 一、获 ...
分类:
其他好文 时间:
2017-04-26 11:54:53
阅读次数:
187
公平锁与非公平锁:公平锁代表获取锁的顺序时按照加入锁的顺序来分配的,即按照FIFO(first in first out)的顺序来的,而非公平锁就时一种抢占式,是随机分配的。不一定先到先地。这就有可能导致某些线程一致获取不到锁。 输出结果: 如果改为: 输出结果: 可见不是按照FIFO来进行分配地。 ...
分类:
编程语言 时间:
2017-04-19 10:16:33
阅读次数:
219
publicclassReentrantLockimplementsLock,java.io.Serializable{
//ReentrantLock有两种锁:公平锁,非公平锁
privatefinalSyncsync;
//并发包基本都是基于aqs
abstractstaticclassSyncextendsAbstractQueuedSynchronizer{...}
//非公平锁
staticfinalclassNonfairSyncextendsS..
分类:
其他好文 时间:
2017-04-14 10:44:59
阅读次数:
142
ReentranLock是java.util.concurrent.locks中的一个类.需要显示的进行unclock 提供了tryLock方法,锁被其他线程持有返回false,否则当前线程会持有锁,并返回true 可以通过构造函数声明一个公平锁,效率较非公平锁低,按队列顺序获取锁 提供了Reent ...
分类:
其他好文 时间:
2017-03-27 23:46:23
阅读次数:
199
公平锁与非公平锁ReentrantLock有一个很大的特点,就是可以指定锁是公平锁还是非公平锁,公平锁表示线程获取锁的顺序是按照线程排队的顺序来分配的,而非公平锁就是一种获取锁的抢占机制,是随机获得锁的,先来的未必就一定能先得到锁,从这个角度讲,synchronized其实就是一种非公平锁。非公平锁... ...
分类:
编程语言 时间:
2017-03-23 18:48:21
阅读次数:
371
工作中经常会遇到争抢共享资源的场景,比如用户抢购秒杀商品,如果不对商品库存进行保护,可能会造成超卖的情况。超卖现象在售卖火车票的场景下更加明显,两个人购买到同一天同一辆列车,相同座位的情况是不允许出现的。交易系统中的退款同样如此,由于网络延迟和重复提交极端时间差的情况下,可能会造成同一个用户重复的退... ...
分类:
其他好文 时间:
2017-03-05 19:14:52
阅读次数:
222