核心概念 🔍
- 线程:Java通过
Thread
类实现多线程,每个线程独立执行任务
- 进程:程序运行的基本单位,与线程不同的是进程间内存隔离
- 并发模型:Java支持多线程并发执行,提高CPU利用率
- 线程状态:包含新建、就绪、运行、阻塞、终止五种状态
常用工具类 🛠
java.util.concurrent
包提供线程池(ExecutorService
)、同步器(CountDownLatch
)、循环队列(BlockingQueue
)等
synchronized
关键字实现对象锁,确保代码块线程安全
volatile
修饰符保证变量可见性,但不保证原子性
线程池实践 📈
- FixedThreadPool:固定数量线程,适合控制资源消耗
- CachedThreadPool:动态调整线程数量,适合处理短时任务
- SingleThreadExecutor:单线程串行执行,确保任务顺序
同步机制 🛡
- ReentrantLock:可重入锁,支持公平策略与条件等待
- Semaphore:信号量,控制同时访问的线程数量
- CyclicBarrier:循环屏障,让线程等待其他线程完成
扩展阅读 📚
深入理解Java线程安全 | Java并发编程实战