11.java
来自「Java版本的操作系中的生产者与消费者的代码~」· Java 代码 · 共 59 行
JAVA
59 行
/**
* @(#)11.java
*
*
* @author
* @version 1.00 2008/4/29
*/
public class 11 {
public 11() {
}
}public class Consumer extends Sleep implements Runnable {
private Container contain = null;
public Consumer(Container contain) {
super();
this.contain = contain;
}
public void run() {
// TODO Auto-generated method stub
while (true) {
synchronized (contain) {
while (contain.isEmpty()) {
try {
contain.wait();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
consume();//消费
try {
haveASleep();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
synchronized (contain) {
contain.notify();
}
}
}
private void consume() {
Product a = (AProduct) contain.pop();
System.out.println("消费了一个产品" + a.toString());
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?