求解下面的代码(标记的部分)在整个代码中的意思
public class ShareData {
private char c;
private boolean isProduced;
public synchronized void putShareChar(char c){
if(isProduced){
System.out.println("消费者还未消费,因此生产者停止生产");
try {
wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
this.c=c; //不懂
isProduced=true;//不懂
notify();
System.out.println("生产了产品"+c);
}
[解决办法]
这个方法会在一个循环里反复调用,this.c = c是将当前生产在产品设置为c,isProduced = true是使得方法在以后的执行中都会执行一次打印和wait(),当消费者完成消费的时候,就会通知生产者进行生产
[解决办法]