av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

java - Cas操作會加鎖嗎

瀏覽:116日期:2024-01-12 09:39:59

問題描述

java - Cas操作會加鎖嗎

問題:(1)不需要cas操作來加鎖和解鎖,這個怎么理解??cas操作不是如果比較不成功那么就一直嘗試嗎?和加鎖有什么關(guān)系??這個該如何理解

問題解答

回答1:

compare and swap操作不一定不需要鎖,看平臺,但是大多數(shù)平臺都是支持無鎖cas的。最簡單的鎖是通過test and set實現(xiàn)的自旋鎖,當(dāng)然通過cas也可以實現(xiàn)。

自旋鎖在上鎖失敗時的確會不斷嘗試,耗盡cpu資源。如

while (flag.test_and_set()) { /* yield; */ } // 上鎖flag.clear(); // 解鎖

系統(tǒng)接口提供的鎖,上鎖失敗時一般會掛起線程,類似

while (flag.test_and_set()) { flag.wait_for_unlock_signal(); } // 上鎖

這里的wait_for_unlock_signal()是個假想函數(shù)。但是上鎖依然依賴類似cas的原子操作。也就是說,現(xiàn)在鎖都是通過一些基本的原子操作來實現(xiàn)的,如test and set和compare and swap。

標(biāo)簽: java
相關(guān)文章:
主站蜘蛛池模板: 男人视频网站 | av中文字幕在线 | 亚洲精品456| 精品日韩在线 | 国产亚洲网站 | 国产精品久久久久无码av | 操久久久| 99免费精品视频 | 一区二区三区四区电影 | 操射视频 | 亚洲精品一区二区三区四区高清 | 国产一极毛片 | 欧美一区二区三区在线看 | 国产精品一区一区三区 | 亚洲天堂av网 | 日本久久www成人免 成人久久久久 | 欧美涩涩网 | 国产视频二区 | 亚洲国产精品久久久久秋霞不卡 | 国产精品毛片无码 | 色伊人 | 久久久久国产视频 | 亚洲综合一区二区三区 | 欧美精品二区 | 日产久久 | 亚洲精品1| 波多野结衣一区二区 | 国产精品第2页 | 99免费看 | 伊人二区| 亚洲精品一二区 | 不卡一区 | 久久精品网 | 欧美精品在线免费观看 | 欧美最猛黑人xxxx黑人 | 久久国产欧美一区二区三区精品 | 综合久久网 | 亚洲精品一二三 | 欧美1区| 久久伦理电影 | 日韩一区二区三区av |