1、synchronized关键字修饰
sychronized method(){}
sychronized (objectReference) {/*block*/}
static synchronized method(){}
sychronized(classname.class)
前两者是该对象锁,后两者是类锁。
2、定义常量。final static等
3、使用ReentrantLock可重入锁
1、synchronized关键字修饰
sychronized method(){}
sychronized (objectReference) {/*block*/}
static synchronized method(){}
sychronized(classname.class)
前两者是该对象锁,后两者是类锁。
2、定义常量。final static等
3、使用ReentrantLock可重入锁