Files
Hui-s-notebook/203-Java/203.1-Java面试/205.12-多线程/Java-面试-并发.md
2023-09-10 10:50:53 +08:00

825 B

线程创建方式

  • 继承 Thread
  • 实现 Runnable
  • 通过 ExecutorService 和 Callable<Class>

线程池工作原理

线程上下文切换

阻塞队列

并发关键字

CountDownLatch

一个同步工具类, 允许一个或多个线程一直等待其他线程的操作执行完成后再执行相关操作

CyclicBarrier

让一组线程等待至某个状态后再全部同时执行

Semaphore

信号量, 用于控制同时访问某些资源的线程个数

多线程共享数据

  1. 将数据抽象为一个类, 并将对这个数据的操作封装在类的方法中
  2. 将 Runnable 对象作为一个类的内部类, 将共享数据作为这个类的成员变量

ConcurrentHashMap 并发

减小锁的粒度, 使用多个 Segment

线程调度

CAS

AQS