public class IntegerProducer extends Thread
{
    private Buffer<Integer> buffer;

    public IntegerProducer(Buffer<Integer> buffer)
    {
	this.buffer = buffer;
    }

    public void run()
    {
	for (int i = 0; i < 20; i++)
	{
	    buffer.put(new Integer(i));
	    try
	    {
		Thread.sleep((long) Math.random() * 1000);
	    } 
	    catch (InterruptedException e){}
	}
    }
}
