![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java面试题02
文章平均质量分 65
尚硅谷视频总结-zhouyang
浪出@一片天
这个作者很懒,什么都没留下…
展开
-
03、集合类不安全
ArrayListpackage com.lxj.interview2;import java.util.*;public class ArrayListNotSafeDemo { public static void main(String[] args) { List<String> list = new ArrayList<>(); //List<String> list = new Vector<>()原创 2022-04-12 08:59:48 · 46 阅读 · 0 评论 -
02、CAS+ABA问题
什么是CASCompare And Set 比较并交换CAS的全称为Compare-And-Swap,它是一条CPU并发原语。它的功能是判断内存某个位置的值是否为预期值,如果是则更改为新的值,这个过程是原子的。package com.lxj.interview2;import java.util.concurrent.atomic.AtomicInteger;/** * 1、CAS是什么--》compareAndSet 比较并交换 * * */public class CASDemo原创 2022-04-12 08:58:53 · 39 阅读 · 0 评论 -
01、volatile+JMM
volatilevolatile是java虚拟机提供的轻量级的同步机制1、保证可见性在多线程中,每个线程不能直接修改主内存中(这里说的主内存就是内存条)的数据,而是要先把主内存中的数据拷贝到自己的工作内存中,线程在各自的工作内存中修改数据,然后把修改后的数据写入到主内存中,可见性指的是在主内存总的数据被其他线程重新写入的时候能够读取到写入后的数据volatile可见性代码验证没加volatile修饰package com.lxj.interview2;import java.util.con原创 2022-04-12 08:54:06 · 49 阅读 · 0 评论