1. 同步方法,即用 synchronized 关键字修饰的方法。
2. 同步代码块,即用 synchronized 关键字修饰的语句块。
3. 使用特殊变量(volatile)实现线程同步。
4. 使用 ReentrantLock 实现线程同步。
5. 使用局部变量实现线程同步。如果使用 ThreadLocal 管理变量,则每一个使用该变量的线程都获得该变量的副本,副本之间相互独立,这样每一个线程都可以随意修改自己的变量副本,而不会对其他线程产生影响。
6. 使用阻塞队列实现线程同步。
7. 使用原子变量实现线程同步。