重入锁的运用

java高并发程序设计 - 网易云课堂

为了更好的支持并发程序,JDK内部提供了大量的实用的API与框架。

同步控制是并发程序必不可少的手段,synchronized就是最简单的控制方法。

这里介绍synchronized的替代品-重入锁。

相关包:

java.util.concurrent.locks.ReentrantLock

相关方法:

lkObj.lock();获取锁,如果锁被占用,一直等待;

lkObj.lockInterruptibly();获得锁,但优先响应中断;

lkObj.tryLock();尝试获得锁,如果获得了,返回true;如果没有获得,返回false;不等待的。

lkObj.tryLock(1000, TimeUnit.MILLISECONDS);在指定的时间内获得锁,如果获得了,返回true;如果没有获得,返回false;

lkObj.unlock();释放锁;

你可能感兴趣的:(重入锁的运用)