午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

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

java - Cas操作會(huì)加鎖嗎

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

問題描述

java - Cas操作會(huì)加鎖嗎

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

問題解答

回答1:

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

自旋鎖在上鎖失敗時(shí)的確會(huì)不斷嘗試,耗盡cpu資源。如

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

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

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

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

標(biāo)簽: java
相關(guān)文章:
主站蜘蛛池模板: 国产成人在线免费观看视频 | 在线不卡免费视频 | 国产在线导航 | 女人洗澡一级特黄毛片 | 免费一级a毛片夜夜看 | 99热这里只有精品首页 | 青青草华人在线视频 | 亚洲一区二区在线免费 | 中文字幕av久久爽av | 香蕉视频在线网站 | 中文字幕乱码一区二区 | 成人69视频| 国产又黄又爽免费视频 | 成人午夜视频在线 | 毛片视频播放 | 亚洲色图导航 | 九九在线精品 | jizz免费| 青草综合 | 日本黄色一区 | 久久午夜夜伦鲁鲁片 | 久久久精品久久 | 男人久久 | 国产一级高清 | 日韩久久一区二区三区 | 97超碰在线播放 | 中文字幕日韩在线观看 | 久久九色 | 欧美日韩久久久久久 | 任你操在线视频 | 国产调教在线 | 久久久在线 | 黄色国产视频网站 | 一级黄色大片免费看 | 在线观看国产区 | 毛片毛片毛片 | 久久久精品久久久久 | 97午夜视频 | 国产精品免费看片 | 1024国产在线 | 丝袜美腿亚洲综合 |