同步
public synchronized void put(int d) {
data[index] = d;
index++;
}public void put(int d) {
...
synchronized(this) {
data[index] = d;
index++;
}
...
}public class Material {
private int data1 = 0;
private int data2 = 0;
private Object lock1 = new Object();
private Object lock2 = new Object();
public void doSome() {
...
synchronized(lock1) {
...
data1++;
...
}
...
}
public void doOther() {
...
synchronized(lock2) {
...
data2--;
...
}
...
}
}Last updated