自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(3)
  • 收藏
  • 关注

原创 Java面试题 3.我们知道 ArrayList 是线程不安全,请编写一个不安全的案例并给出解决方案?

我们知道 ArrayList 是线程不安全,请编写一个不安全的案例并给出解决方案?首先这个问题我们要搞清一个问题?ArrayList 为什么是线程不安全?根据问题给出解决方案首先需要了解什么是线程安全:线程安全就是说多线程访问同一代码(对象、变量等),不会产生不确定的结果。 ArrayList线程不安全的原因是,ArrayList为了并发性和效率,在add的方法里没有加锁。在多线程的情况下会报 java.util.ConcurrentModificationException并发修改异常。解决方

2021-01-25 00:38:10 168 3

原创 Java面试题 2.CAS 你知道吗?CAS 底层原理?谈谈对 UnSafe 的理解?

CAS 你知道吗?CAS 底层原理?谈谈对 UnSafe 的理解?AtomicIntegerCAS–> Unsafe -->CAS底层思想 —》ABA --》原子引用更新 --》 如何规避ABA问题CAS翻译过来就是,compare and set,比较并交换,上节课里面说用atomicInteger可以解决volatile的不保证原子性的问题,那么为什么它可以解决这个问题呢?首先atomicUnteger是调用了compare and set的方法,compare and set方法相

2021-01-20 21:34:16 398

原创 Java面试题 1.请谈谈你对 volatile 的理解

Java面试题 并发编程1.请谈谈你对 volatile 的理解volatile 是 Java 虚拟机提供的轻量级的同步机制保证可见性禁止指令排序不保证原子性JMM(Java 内存模型)[ 1 ] JMM本身是一种抽象的概念并不是真实存在的,它描述的是一组规定或者规范,通过这种规范定义了程序的访问方式。[ 2 ] JMM同步规定[a ]线程解锁前,必须把共享变量的值刷回主内存[b]线程解锁前,必须读取主内存的最新值到自己的工作内存[c]加锁和解锁是同一把锁[ 3 ]由于JVM运行

2021-01-18 19:29:11 163

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除