一、Lock源码。
1、是一个接口。一共有6个方法。
2、方法详细如下:
(1)当前线程尝试获取锁。结果分两种情况,一是成功获取到锁,则返回;二是获取锁失败,则一直等待。不响应中断请求。
(2)当前线程释放掉自己所占用的锁。同时唤醒这个锁上的一个等待线程。(两个任务)
(3)当前线程尝试以非公平的方式去获取锁,立即返回。如果成功获取,则返回true;如果获取失败,则返回false。
(4)当前线程尝试在规定的unit时间内获取锁。如果在这unit时间内成功获取到了锁,则返回true;如果在规定的unit时间内还没有获取到锁,则返回false,表示获取锁失败。另外,如果该线程在规定的unit时间内,即该线程等待期间内,如果有中断请求,则抛出异常。
(5)当前线程尝试获取锁。如果获取不到,那么就一直等待。如果在该线程等待期间有中断请求,那么就抛出异常。
(6)创建一个Condition对象。
二、Condition接口。
1、一个接口,一共有7个方法。
2、
(1)
(2)
(3)
(4)
(5)
(6)
(7)
三、