《偏向鎖,輕量級鎖,重量級鎖》優缺點對比(lock的優缺點對比)
鎖
優點
缺點
適用場景
偏向鎖加鎖和解鎖不需要額外的消耗,和執行非同步方法相比僅存在納秒級的差距
如果執行緒間存在鎖競爭,會帶來額外的鎖撤銷的消耗
適用於只有乙個執行緒訪問同步塊場景
輕量級鎖
競爭的執行緒不會阻塞,提高了程式的響應速度
如果始終得不到索競爭的執行緒,使用自旋會消耗cpu
追求響應速度,同步塊執行速度非常快
重量級鎖
執行緒競爭不使用自旋,不會消耗cpu
執行緒阻塞,響應時間緩慢
追求吞吐量,同步塊執行速度較長
《偏向鎖,輕量級鎖,重量級鎖》優缺點對比
偏向鎖,輕量級鎖,重量級鎖 優缺點對比 lock的優缺點對比 鎖 優點 缺點 適用場景 偏向鎖加鎖和解鎖不需要額外的消耗,和執行非同步方法相比僅存在納秒級的差距 如果執行緒間存在鎖競爭,會帶來額外的鎖撤銷的消耗 適用於只有乙個執行緒訪問同步塊場景 輕量級鎖 競爭的執行緒不會阻塞,提高了程式的響應速度...
偏向鎖 輕量級鎖 重量級鎖
首先簡單說下先偏向鎖 輕量級鎖 重量級鎖三者各自的應用場景 偏向鎖 只有乙個執行緒進入臨界區 輕量級鎖 多個執行緒交替進入臨界區 重量級鎖 多個執行緒同時進入臨界區。還要明確的是,偏向鎖 輕量級鎖都是jvm引入的鎖優化手段,目的是降低執行緒同步的開銷。比如以下的同步 塊 synchronized l...
偏向鎖 輕量級鎖 重量級鎖
synchronized關鍵字就像是汽車的自動檔,現在詳細講這個過程。一腳油門踩下去,synchronized會從無鎖公升級為偏向鎖,再公升級為輕量級鎖,最後公升級為重量級鎖,就像自動換擋一樣。那麼自旋鎖在 呢?這裡的輕量級鎖就是一種自旋鎖。初次執行到synchronized 塊的時候,鎖物件變成偏...