//生产者
public class p {
private String lock;
public p(String lock) {
this.lock = lock;
}
public void setValue() {
try {
// 生产者
synchronized (lock) {
System.out.println(Thread.currentThread().getName() + "开始判断 ="
+ ValueObject.value);
if/*判断使用if还是while*/ (ValueObject.value != 0) {
System.out.println(Thread.currentThread().getName()
+ "前半部 =" + ValueObject.value);
lock.wait();
System.out.println(Thread.currentThread().getName()
+ "继续执行\n");
}
++ValueObject.value;
System.out.println(Thread.currentThread().getName() + "后半部 ="
+ ValueObject.value);
Thread.sleep(1000);
lock.notifyAll();
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
}
//消费者
public class c {
private String lock;
public c(String lock) {
this.lock = lock;
}
pub