什麼是AQS?

AQS其實就是一個同步器,在java.util .concurrent包下的類都是基於AQS實現的。 AQS的內部實現是先通過使用CAS獲取鎖,如果獲取到了,就更新state值,如果沒獲取到,AQS會再使用CAS獲取一次,如果還是沒獲取到,那麼就通過自旋,讓當前線程進入循環狀態,不斷地嘗試獲取鎖,直到獲取成功後退出循環。
相關文章
相關標籤/搜索