国产一区二区三区四区在线观看 _欧美日韩国产高清一区_精品成人佐山爱一区二区_国产精品一卡二

二維碼
企資網(wǎng)

掃一掃關(guān)注

當(dāng)前位置: 首頁(yè) » 企業(yè)資訊 » 咨詢 » 正文

你知道什么是CAS嗎?

放大字體  縮小字體 發(fā)布日期:2021-12-24 11:38:49    作者:付嘉歆    瀏覽次數(shù):105
導(dǎo)讀

【死記硬背】CAS英文是Compare And Swap/Set,即比較并交換。CAS得實(shí)現(xiàn)原理:它包含3個(gè)參數(shù) CAS(V,E,N)。V 表示要更新得變量(內(nèi)存值),E表示預(yù)期值(舊得),N表示新值。如果內(nèi)存位置V得值與預(yù)期原值E相匹配,那么處理

【死記硬背】

CAS英文是Compare And Swap/Set,即比較并交換。

CAS得實(shí)現(xiàn)原理:它包含3個(gè)參數(shù) CAS(V,E,N)。V 表示要更新得變量(內(nèi)存值),E表示預(yù)期值(舊得),N表示新值。如果內(nèi)存位置V得值與預(yù)期原值E相匹配,那么處理器會(huì)自動(dòng)將該位置值更新為新值N,返回true。否則處理器不做任何操作,返回false。

CAS得缺點(diǎn):只能保證對(duì)一個(gè)變量得原子性操作,長(zhǎng)時(shí)間自旋會(huì)給CPU帶來(lái)壓力,可能會(huì)存在ABA問(wèn)題。

什么是ABA問(wèn)題:

CAS實(shí)現(xiàn)一個(gè)重要前提需要取出內(nèi)存中某時(shí)刻得數(shù)據(jù),而在下一時(shí)刻比較并替換,那么在這個(gè)時(shí)間差類會(huì)導(dǎo)致數(shù)據(jù)得變化。比如說(shuō)一個(gè)線程one從內(nèi)存位置V中取出A,這時(shí)候另一個(gè)線程two也從內(nèi)存中取出A,并且two進(jìn)行了一些操作變成了B,然后 two又將V位置得數(shù)據(jù)變成 A,這時(shí)候線程one進(jìn)行CAS操作發(fā)現(xiàn)內(nèi)存中仍然是A,然后 one 操作成功。盡管線程one 得 CAS操作成功,但是不代表這個(gè)過(guò)程就是沒(méi)有問(wèn)題得。部分樂(lè)觀鎖得實(shí)現(xiàn)是通過(guò)版本號(hào)(version)得方式來(lái)解決ABA問(wèn)題,樂(lè)觀鎖每次在執(zhí)行數(shù)據(jù)得修改操作時(shí),都會(huì)帶上一個(gè)版本號(hào),一旦版本號(hào)和數(shù)據(jù)得版本號(hào)一致就可以執(zhí)行修改操作并對(duì)版本號(hào)執(zhí)行+1 操作,否則就會(huì)失敗。因?yàn)槊看尾僮鞯冒姹咎?hào)都會(huì)隨之增加,所以不會(huì)出現(xiàn)ABA問(wèn)題,因?yàn)榘姹咎?hào)只會(huì)增加不會(huì)減少。

【答案解析】

AtomicInteger類中有CAS得使用,樣例代碼如下:

import java.util.concurrent.atomic.AtomicInteger;public class CASTest { public static void main(String[] args) { // 創(chuàng)建一個(gè)原子類 AtomicInteger atomicInteger = new AtomicInteger(5); System.out.println(atomicIntegerpareAndSet(5, 前年) + "\t current data: " + atomicInteger.get()); System.out.println(atomicIntegerpareAndSet(5, 1024) + "\t current data: " + atomicInteger.get()); }}

【溫馨提示】

點(diǎn)贊+收藏文章,我并私信回復(fù)【面試題解析】,即可百分百免費(fèi)領(lǐng)取樓主得所有面試題資料!

 
(文/付嘉歆)
免責(zé)聲明
本文僅代表作發(fā)布者:付嘉歆個(gè)人觀點(diǎn),本站未對(duì)其內(nèi)容進(jìn)行核實(shí),請(qǐng)讀者僅做參考,如若文中涉及有違公德、觸犯法律的內(nèi)容,一經(jīng)發(fā)現(xiàn),立即刪除,需自行承擔(dān)相應(yīng)責(zé)任。涉及到版權(quán)或其他問(wèn)題,請(qǐng)及時(shí)聯(lián)系我們刪除處理郵件:weilaitui@qq.com。
 

Copyright ? 2016 - 2025 - 企資網(wǎng) 48903.COM All Rights Reserved 粵公網(wǎng)安備 44030702000589號(hào)

粵ICP備16078936號(hào)

微信

關(guān)注
微信

微信二維碼

WAP二維碼

客服

聯(lián)系
客服

聯(lián)系客服:

在線QQ: 303377504

客服電話: 020-82301567

E_mail郵箱: weilaitui@qq.com

微信公眾號(hào): weishitui

客服001 客服002 客服003

工作時(shí)間:

周一至周五: 09:00 - 18:00

反饋

用戶
反饋

主站蜘蛛池模板: 国语自产精品视频在免费| 久久在线免费观看视频| 国产亚洲一区二区三区在线播放| 国产欧美日韩小视频| 国产精品国产三级国产aⅴ浪潮| 国产精品一区二区a| 青青青国产在线视频| 亚洲欧美日韩不卡一区二区三区| 国产精品日韩精品| 激情伊人五月天| 久久久久中文字幕| 欧美专区在线视频| 日本最新一区二区三区视频观看| 亚洲在线欧美| 在线天堂一区av电影| 国产精品久久久久免费| 激情综合网婷婷| 久久久久人妻精品一区三寸| 日本最新高清不卡中文字幕V| 亚洲图片在线观看| www国产亚洲精品久久网站| 久久国产精品久久国产精品| 久久伊人色综合| 久久另类ts人妖一区二区| 日本午夜精品一区二区三区| 日韩在线视频网站| 日韩中文字幕在线看| 日韩一区不卡| 日本精品一区| 久久综合久久网| 久久av中文字幕| 国产免费成人av| 国产精品美女主播在线观看纯欲| 国产精品毛片a∨一区二区三区|国 | 欧美中文字幕视频在线观看| 亚洲a∨一区二区三区| 亚洲视频在线观看日本a| 中文视频一区视频二区视频三区| 中文字幕日韩精品一区二区| 亚洲精品一区二区三| 日本一区二区三区在线视频|