Lock锁
Posted bbbbbbbb1og
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Lock锁相关的知识,希望对你有一定的参考价值。
Lock
(interface)
(jdk1.5特性)
? 常用方法
void lock(): 获取锁。
void unlock(): 释放锁。
? ReentrantLock extends Lock
我们一般用 lock 的实现类( ReentrantLock 类)构建对象
? 示例代码
@Override
public void run() {
while (true) {
try {// 加锁
lock.lock();//紫色部分为需要同步的代码
if (tickets > 0) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println(Thread.currentThread().getName()
+ "正在出售第" + (tickets--) + "张票");}
} finally {
// 释放锁
lock.unlock();
}
}
}
以上是关于Lock锁的主要内容,如果未能解决你的问题,请参考以下文章
并发-显示锁Lock和独占锁AQS(AbstractQueuedSynchronizer)