多线程操作实例——生产者与消费者
面对多线程学习生产者与消费者是最基本的实例 对于java后端开发的人员必须要掌握,还有考研考试计算机操作系统的同鞋。 下面是三个实例对于生产者与消费者的的例子,层层递进,逐步解决问题。 问题:生产者——设置信息名字name,和内容content 消费者——负责取出设置的信息。 一、基本实现 由于线程的不确定性可能出现以下问题: (1)消费者取出的信息不匹配,即不是由同一个生产者设置的信息 (2)生产者生产了多个信息,消费者才开始取出信息,或消费者取出的重复的信息。 上面的问题下面会逐一解决,下面先看出现问题的程序: package li.xin.hua.ch9; /*线程生产者与向消费者最基本实现,问题有: * 1、数据不匹配 * 2、数据重复取出已经取过的数据*/ class Info{ private String name; private String content; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getContent() { return content; } public void setContent(String content) { this.content =