其他分享
首页 > 其他分享> > Lock锁,ReentrantLock,lockInterruptibly()方法,tryLock()方法

Lock锁,ReentrantLock,lockInterruptibly()方法,tryLock()方法

作者:互联网

1.在 JDK5 中 增 加 了 Lock 锁 接 口 , 有 ReentrantLock 实 现 类,ReentrantLock 锁称为可重入锁, 它功能比 synchronized 多.锁的可重入是指,当一个线程获得一个对象锁后,再次请求该对象 锁时是可以获得该对象的锁的

2.ReentrantLock的基本使用,调用 lock()方法获得锁, 调用 unlock()释放锁,ReentrantLock 锁具有可重入性

3.lockInterruptibly()方法:如果当前线程未被中断则获得锁, 如果当前线程被中断则出现异常。

4.tryLock(long time, TimeUnit unit) 的作用在给定等待时长内锁没有 被另外的线程持有,并且当前线程也没有被中断,则获得该锁.通过该 方法可以实现锁对象的限时等待.

5.tryLock()仅在调用时锁定未被其他线程持有的锁,如果调用方法时,锁对象对其他线程持有,则放弃.调用方法尝试获得,如果该锁没有 被其他线程占用则返回 true 表示锁定成功; 如果锁被其他线程占用则返回 false,不等待.

标签:调用,对象,Lock,ReentrantLock,线程,tryLock,方法
来源: https://www.cnblogs.com/pr1012468597/p/15182485.html