【吊打面试官】2021高频面试题之Java并发(二)
Java 并发编程(二)
- 1 、并发编程三要素?
- 2 、实现可见性的方法有哪些?
- 3 、多线程的价值?
- 4 、创建线程的有哪些方式?
- 5 、创建线程的三种方式的对比?
- 6 、线程的状态流转图
- 7 、Java线程具有五中基本状态
- 8 、什么是线程池?有哪几种创建方式?
- 9 、四种线程池的创建:
- 10 、线程池的优点?
- 11 、常用的并发工具类有哪些?
- 12 、CyclicBarrier和CountDownLatch的区别
- 13 、synchronized的作用?
- 14 、volatile关键字的作用
- 15 、什么是CAS
- 16 、CAS的问题
- 17 、什么是Future?
- 18 、什么是AQS
- 19 、AQS支持两种同步方式:
- 20 、ReadWriteLock是什么
- 21 、FutureTask是什么
- 22 、synchronized和ReentrantLock的区别
- 23 、什么是乐观锁和悲观锁
- 24 、线程B怎么知道线程A修改了变量
- 25 、synchronized、volatile、CAS比较
- 26 、sleep方法和wait方法有什么区别?
- 27 、ThreadLocal是什么?有什么用?
- 28 、为什么wait()方法和notify()/notifyAll()方法要在同步块中被调用
- 29 、多线程同步有哪几种方法?
- 30 、线程的调度策略
- 31 、ConcurrentHashMap的并发度是什么
- 32 、Linux环境下如何查找哪个线程使用CPU最长
- 33 、Java死锁以及如何避免?
- 34 、死锁的原因
- 35 、怎么唤醒一个阻塞的线程
- 36 、不可变对象对多线程有什么帮助
- 37 、什么是多线程的上下文切换
- 38 、如果你提交任务时,线程池队列已满,这时会发生什么
- 39 、Java中用到的线程调度算法是什么
- 40 、什么是线程调度器(Thread Scheduler)和时间分片(Time Slicing)?
- 41 、什么是自旋
- 42 、Java Concurrency API 中的 Lock 接口(Lock interface) 是什么?对比同步它有什么优势? 对比同步它有什么优势?
- 43 、单例模式的线程安全性
- 44 、Semaphore有什么作用
- 45 、Executors类是什么?
- 46 、线程类的构造方法、静态块是被哪个线程调用的
- 47 、同步方法和同步块,哪个是更好的选择?
- 48 、Java线程数过多会造成什么异常?