请编写一个生产者/消费者的示例程序,生产者随机地产生若干个整数,消费者将这些整数输出到屏幕。要求考虑线程安全。
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
class Behave {
private List<Integer> list = new ArrayList<Integer>();
public synchronized void produceNum(Integer num) {//对象锁
if (list.size() > 0) {
try {
wait();//等待写
} catch (InterruptedException e) {
e.printStackTrace();
}
}
list.add(num);//为空,插入元素
System.out.println("生产数字:" + num);
notify();//通知读线程
}
public synchronized void consumeNum() {//对象锁
if (list.size() == 0) {