java 中的线程同步问题,求大神!!

java 中的线程同步问题,如下代码是放苹果和吃苹果的线程同步,但一次只能放一个,如何做到一次可以放三个??救助大神!!

package com.aiit.app;
//能够实现同步 jdk1.0
public class SynchronizedPlate implements IBuffer{
private int value ; //只有1个盘子来完成同步
// private int [] values = new int[3];//
private boolean isEmpty ; //false
@Override
public synchronized void set(int value) { //向盘子中放东西
//先要判断盘子是否为空
while(isEmpty) { //开始
System.out.println("生产者线程尝试向盘子中放数据");
System.out.println("isEmpty="+this.isEmpty+",value=" + this.value);
try {
this.wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
//可以放东西了
this.value = value ;
System.out.println("生产者向盘子中放了数据,值是:" + this.value);
//改变这个盘子的状态
this.isEmpty = true ;
//通知正在等待的消费者线程
this.notifyAll();
}

@Override
public synchronized int get() {
      while(!isEmpty) {
      System.out.println("消费者线程尝试从盘子中取数据....");   
      System.out.println("isEmpty="+this.isEmpty+",value=" + this.value);
       try {
        this.wait();
    } catch (InterruptedException e) {
        e.printStackTrace();
    }
     }//结束
      int newValue  = this.value  ;
      System.out.println("消费者从向盘子中取了数据,值是:" + newValue);
      this.isEmpty  = false  ;  //盘子变成空的
      //通知生产者线程,你可以放数据了
      this.notify();
    return newValue;
}

}

http://www.cnblogs.com/phinecos/archive/2010/03/13/1684877.html