在缓冲区中存储多个值

时间:2015-10-20 19:06:31

标签: java multithreading buffer

我有一个消费者和生产者类,我使用的是非同步缓冲区。我希望生产者和消费者都能够在缓冲区中存储一个值,并且它们不应该相互覆盖。我还希望消费者能够访问缓冲区中设置的值并能够更改它。有可能吗?

缓冲器

public interface Buffer{
public void set( int value ) throws InterruptedException; 

public int get() throws InterruptedException; 
}

unsynchronizedBuffer

public void set( int value) throws InterruptedException{
   System.out.printf( "Producer writes\t%2d ", value );
   buffer = value;
}

public int get() throws InterruptedException{
   System.out.printf( "Consumer guesses  ", buffer );
   return buffer;
}

在制作人中,我在Buffer中设置了一个随机数。我希望能够对消费者做同样的事情而不会覆盖

0 个答案:

没有答案