java jvm 多线程_java面试之JVM与多线程

1.synchronized和volatile的区别:

2.什么是happens-before原则?

3.线程有几种状态?

4.指令重排序

5.什么是线程安全与非线程安全?

6.类的加载与卸载?

7. synchronized与volatile的实现原理?

8.什么是类加载器?

9.什么是双亲委派模型?

10.垃圾回收机制?

11.CAS与ABA

12.乐观锁与悲观锁?

13.AQS与lock

14.什么情况下会触发FullGC?

15.什么情况触发minorGC?

16.java1.8为什么用Metaspace(元空间)替换掉PermGen(永久代)?Metaspace保存在哪里?

17.线程池

18.对象引用有哪几种方式?

19.Java对象生命周期与类的生命周期?

20.JUC常用工具?

21.阻塞非阻塞、同步与非同步的概念?

22.wait()与sleep()方法的异同点?

23.Synchronized 和 ReentrantLock 有什么不同?各适合什么场景?

24.读写锁的适用场景?ReentrantReadWriteLock是如何实现的?

25.线程间的通信方式?

26.保证线程安全的方法有哪些?

27.如何提高多线程的并发性能?

28. ThreadLocal用来解决什么问题?ThreadLocal是如何实现的?

29.类的线程安全

30.Callable与Future

31.重量级锁的实现

32.轻量级锁的加锁过程?

33.Future与FutureTask?

34.ReentrantLock的实现原理?

35.ReentrantReadWriteLock实现原理

37.volatile的原理

38.并发常用工具类

以上问题答案:

链接:https://pan.baidu.com/s/1867ot71fsVwJdE9yhDC98w

提取码:re8e

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值