摘要: CAS compare and swap 什么是CAS? 假设内存里面放的是0 我们现在多线程访问这个0 每个线程都想给这个0 加1 如果我们想让数据一致 必须先加锁sys JUC这个包出现之后出现了CAS操作 CAS 把内存中的0 拿到CPU中做计算 做完计算后0变成1 然后把1 写回去 写回去的 阅读全文
posted @ 2022-04-26 21:48 花心大萝卜li 阅读(215) 评论(0) 推荐(0)
摘要: 乐观锁,自旋锁 无锁 cas 从CPU读取数据内存 值v 假如是0 修改为1 然后往回写 以前需要上锁 但是乐观锁不上锁了 在往回写的过程中判断 若内存中的数据依然为0 那么就没有线程修改 把0改成1 若其他线程修改 那么在往回写的过程中 会发现线程已经修改 已经不是0了 那么 就继续读取内存中修改 阅读全文
posted @ 2022-04-26 13:11 花心大萝卜li 阅读(74) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2022-04-26 11:10 花心大萝卜li 阅读(27) 评论(0) 推荐(0)