synchronized相比reentrantLock性能不好原因分析:
synchronized為重量級鎖時:
猜測1 syn鎖的獲取和釋放需要操作系統(tǒng)的互斥量(mutex)實(shí)現(xiàn),均需要用戶態(tài)和內(nèi)核態(tài)的切換;lock是CAS獲取和釋放的鎖,無需切換
猜測2 syn和lock底層都有等待的線程集合,都是阻塞。syn的阻塞是系統(tǒng)來處理的,需用戶態(tài)和內(nèi)核態(tài)的準(zhǔn)換;lock的阻塞是執(zhí)行jdk中的代碼來阻塞的,應(yīng)該是一直是在用戶態(tài)的
贊同上面說法嗎