重入鎖的運(yùn)用

java高并發(fā)程序設(shè)計(jì) - 網(wǎng)易云課堂

為了更好的支持并發(fā)程序,JDK內(nèi)部提供了大量的實(shí)用的API與框架。

同步控制是并發(fā)程序必不可少的手段,synchronized就是最簡單的控制方法。

這里介紹synchronized的替代品-重入鎖。

相關(guān)包:

java.util.concurrent.locks.ReentrantLock

相關(guān)方法:

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

lkObj.lockInterruptibly();獲得鎖,但優(yōu)先響應(yīng)中斷;

lkObj.tryLock();嘗試獲得鎖,如果獲得了,返回true;如果沒有獲得,返回false;不等待的。

lkObj.tryLock(1000, TimeUnit.MILLISECONDS);在指定的時(shí)間內(nèi)獲得鎖,如果獲得了,返回true;如果沒有獲得,返回false;

lkObj.unlock();釋放鎖;

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容