公平鎖和非公平鎖

20210827

公平鎖

當(dāng)來了一個線程,他就到隊列中等待,線程按照在隊列中的順序去獲得鎖

優(yōu)點(diǎn):不會有某個線程一直得不到鎖

缺點(diǎn):假如排在前面的線程要占用很長時間的鎖,排在后面的線程就遲遲得不到鎖(銀行辦業(yè)務(wù),我辦業(yè)務(wù)只要5分鐘,我前面的人要搞1小時,造成我辦5分鐘業(yè)務(wù),卻要等1小時)

占著鎖和占著CPU是兩回事!一個線程sleep時他不占著CPU,但占著鎖

非公平鎖

當(dāng)來了一個線程,他直接去嘗試獲取鎖,發(fā)現(xiàn)鎖被其它線程占著,才去隊列中等待

助記

銀行辦業(yè)務(wù):
公平鎖是每個來辦業(yè)務(wù)的人都主動抽號排隊,就算因為下一個人行動遲緩,柜臺空著,也沒人搶著辦業(yè)務(wù);

非公平鎖就是每個來辦業(yè)務(wù)的人,一進(jìn)門就看柜臺是否空著,如果空著就搶下柜臺,如果不空才抽號排隊

參考

https://www.imooc.com/article/302143

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

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