CAS原理

CAS compare and set 先比較再設置。 比如有三個線程去修改一個變量,進行累加的操作,第一次三個線程都會去獲取值,如果開始都是1,那麼當一個線程去修改的時候會去先去看這個值還是1嗎?如果是1,接着下面的流程,其他線程如果也同時對變量進行修改時,他會去交易當前值是否爲1,如果不是會失敗,進行循環的去獲取值。每次保證是原子操作。 就是所謂Atomic原子類的原理,沒有基於加鎖機制串行化
相關文章
相關標籤/搜索