producerandconsumer.java
来自「Java面向对象编程(随书配套源代码) 阐述了面向对象编程的思想」· Java 代码 · 共 60 行
JAVA
60 行
package chapter10;
public class ProducerAndConsumer
{
public static void main(String args[])
{
Quantity q=new Quantity();
new Producer(q);
new Consumer(q);
System.out.println("Press Control-C to stop.");
}
}
class Quantity
{
int n;
synchronized int get()
{
System.out.println("Got: "+n);
return n;
}
synchronized void put(int n)
{
this.n=n;
System.out.println("Put: "+n);
}
}
class Producer implements Runnable
{
Quantity q;
Producer(Quantity q)
{
this.q=q;
new Thread(this,"Producer").start();
}
public void run()
{
int i=0;
while(true)
{
q.put(i++);
}
}
}
class Consumer implements Runnable
{
Quantity q;
Consumer(Quantity q)
{
this.q=q;
new Thread(this,"Consumer").start();
}
public void run()
{
while(true)
{
q.get();
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?