- 加锁,比如synchronize、ReentrantLock或者分布式锁。
- 使用volatile声明变量,轻量级同步,不能保证原子性。
- 使用线程安全类(原子类AtomicXXX,并发容器Copy-OnWriteArrayList/ConcurrentHashMap)等。
- ThreadLocal本地私有变量、信号量Semaphore等。
相关文章
- java中的锁
- 高性能的Compare and Swap
- ReentrantLock和Synchronized的使用场景和实现机制
- 使用线程池的好处以及常用线程池
- 要通过ThreadPoolExecutor创建线程池的原因
本文内容转载自小滴课堂。