采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师的原话是"若CAS添加桶的头节点失败的话则会break",这里口误了吧。应该是成功更新了才会结束自旋才对吧,如果失败就break了那么还如何自旋更新呢?
漂亮,还好看到这里,就赶紧来看看问题区,你很秀老铁
同感是口误,我觉得:cas向table中添加,失败了说明是其他线程改过了,要重新从for中循环判断。
cas成功说明无其他线程干扰,直接结束本次table添加,效率很高。
同学好,casTabAt会进行自旋更新,但是始终需要返回终态而不是一直hung住,所以如果casTabAt返回失败则break
失败了才是自旋吧?break了不是就退出自旋了吗
晕了,那天可能熬夜太晚,失败了会继续执行for循环,去尝试做CAS,成功则会break:)感谢理解和包涵
登录后可查看更多问答,登录/注册
招聘季即将到来,让百度资深面试官来为你的高薪Offer保驾护航
2.2k 27
3.2k 22
1.6k 15
1.8k 14
1.6k 14
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号