面试时,我说cas和double check lock差不多,给面试官整乐了
java吧
全部回复
仅看楼主
level 6
熟用标点💯
楼主
我也不知道他乐啥,我想都是先记录,然后做下一步的操作的时候然后再判断下跟之前的记录是不是一样,如果不一样说明被其他线程动过了,就不需要进行下一步操作了。只不过一个的操作是加不加锁,
2023年12月11日 15点12分
1
level 6
熟用标点💯
楼主
越想越气
2023年12月11日 15点12分
2
level 6
熟用标点💯
楼主
不知道在笑什么
2023年12月11日 15点12分
3
贴吧用户_GbWK6KN
不用理会那些故作高深的人,如果在乎,只会徒增烦恼。
2024年01月13日 10点01分
level 13
自己打骰
你到现在还不知道问题是什么其实更好笑
2023年12月11日 16点12分
4
level 1
麻椒有点辣
你到现在还不知道问题是什么其实更好笑
2023年12月14日 03点12分
5
麻椒有点辣
@熟用标点💯
培训班出来就算了,学的狗屁不是还好意思来这里乱叫唤?几个罵啊,这么牛逼?
2023年12月16日 08点12分
麻椒有点辣
@熟用标点💯
确实整乐了,你看看有人可以给你解答吗?随便找个培训班,学了点crud,看着像个人,脑子就是没东西啊,外包要你吗?嘻嘻
2023年12月16日 10点12分
麻椒有点辣
@麻椒有点辣
不会还没找到工作吧?不会连外包都不要吧?不会吧不会吧?
2023年12月16日 08点12分
熟用标点💯
弱自 说的跟你知道一样
2023年12月16日 08点12分
level 1
贴吧用户_aV8JDZ9
不用理会
2023年12月16日 09点12分
6
level 4
夏天_3
不用理会那些故作高深的人,如果在乎,只会徒增烦恼。
2023年12月16日 10点12分
7
level 3
海东青Wenxin
cas悲观锁,lock乐观锁。说他们的区别吧
2023年12月16日 10点12分
8
BOF🌹
乐观:不撞南墙不回头,悲观:怎么这么难啊,躺平算了
2023年12月16日 10点12分
level 9
蜉蝣梦
双重校验,第一次判空和第二次判空作用分别是什么
2023年12月16日 16点12分
9
Rinly119
都是避免重复初始化 加锁只是排队执行 第二次没有判断的话还是会初始化的
2023年12月17日 02点12分
蜉蝣梦
@Rinly119
第一次判空,除了避免重复创建实例,还有一个作用:高并发情况下锁升级为重量级锁非常消耗性能,所以在锁之前先判断一下,如果已经创建了实例,其他线程就没必要去尝试加锁。第一次和第二次还是有点区别的
2023年12月17日 02点12分
level 1
沈季诗的大气再入日记
你要跟我说罗马和桶装水差不多那我也得乐
有内海 有海峡 是罗马
(
2023年12月16日 17点12分
10
level 8
快叫胖哥😲
应用场景不一样,cas无锁同步,double check lock 还是基于锁
2023年12月16日 17点12分
11
level 8
三字二十五画🌿
笑你很正常,理解太片面,cas是底层系统的原子操作,怎么能和双重校验锁混为一谈,而且普通cas并不能保证没有被其他线程动过,有aba的问题
2023年12月16日 18点12分
12
level 1
阿银的圣代
很好理解啊
,我让你写双重检验的源码,你会写,让你写cas的源码,你会吗?
2023年12月16日 23点12分
13
level 7
当年的反应慢
原地并发修改整个业界无法两种方案:乐观锁和队列。 cas是乐观锁在cpu层级的一种方案,都是比较当前值与预期值是否一致,然后再决定是否修改的思路。队列就不一样了,是利用某种机制,保证一时只能有一个执行者进行修改,包括内存锁、分布式锁、悲观锁,队列、actor、mq等等。double check 属于后者,cas属于前者。
2023年12月17日 00点12分
14
hesl12
说跟队列或者mq也不严谨吧,多消费者场景就不适合,有并发问题
2023年12月17日 02点12分
level 9
鬼鬼大少爷👻
如果你面的是10k的工作,那面试官确实不礼貌。如果你面的是20k的工作,那我也笑你
2023年12月17日 00点12分
15
BT小菜鸡
面10k我也想笑
2023年12月17日 07点12分
1
2
尾页