请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师 关于getAndAddInt() 参数的问题

var1表示传递过来的对象的值

var4表示要改变多少值

var5表示从主存中获取的值?

var5+var4表示更新后的值

那var2表示啥

正在回答

插入代码

1回答

你好,这篇手记 https://www.imooc.com/article/25277 我做了一些问题的整理,包括这个,你这个我单独复制出来:

关于CAS中compareAndSwapInt(var1, var2, var5, var5 + var4)的理解
compareAndSwapInt(var1, var2, var5, var5 + var4)换成 compareAndSwapInt(obj, offset, expect, update)能清楚一些,如果obj内的value和expect相等,就证明没有其他线程改变过这个变量,那么就更新它为update,如果这一步CAS没有成功,那就采用自旋的方式继续进行CAS操作。这块是一个CPU指令完成的,依旧是原子操作。

0 回复 有任何疑惑可以回复我~
  • 提问者 华山小叮当 #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2018-05-26 16:54:27
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号