生产者与消费者问题(java多线程实现)
来源:互联网 发布:程序员常用英语词汇 编辑:程序博客网 时间:2024/05/16 17:21
生产者与消费者问题是指创建一组“生产者”线程和一组“消费者”线程,让他们进行同步互斥的运行,生产者生产一个产品,消费者就消费掉一个产品,下面我就用java的多线程来实现这个课题。
本例子的ChuShi代表生产者,XiaoFei代表消费者。
首先是生产者厨师的代码:
然后是消费者的代码:
接着是封装了生产者的生产方法和消费者的消费方法的类,该类中的方法要使用synchronized关键字,就可以使run方法同步,也就是说,对于同一个Java类的对象实例,run方法同时只能被一个线程调用,并当前的run执行完后,才能被其他的线程调用。需要注意的是每个线程run()方法调用的synchronized修饰的方法必须是一个实例的方法才能保证同步,所以这个里将生产者和消费者的功能封装在一个实例中,在将他们的实例分别传给生产者和消费者,这样他们就能够同步了,下面是同步的方法代码:
还有他们对一个消费品进行同步的操作,在这里我们用的是饼:
下面是主入口方法进行测试:
这个例子就模拟了生产与消费的问题。
- 用JAVA实现多线程(生产者与消费者问题)
- 生产者与消费者问题(java多线程实现)
- java多线程实现生产者与消费者---经典问题
- Boost多线程实现生产者与消费者问题
- JAVA多线程实现生产者消费者问题
- java使用多线程实现生产者消费者问题
- Java多线程模拟实现消费者生产者问题
- java代码实现多线程消费者生产者问题。
- JAVA多线程实例(生产者与消费者问题)
- java多线程同步:生产者与消费者问题
- Java多线程--生产者与消费者问题
- Java经典多线程问题--生产者与消费者
- java 生产者消费者问题-多线程与死锁
- java多线程实现生产者与消费者
- Java 多线程实现生产者消费者问题(wait/notify)
- java中的生产者与消费者问题(多线程)
- Java多线程之生产者与消费者实现(1p1c)
- 生产者消费者问题(Java多线程)
- 一些软件存储记录的文件和解密方法
- 找到问题所在
- 找到问题所在
- 两种方法关闭android应用
- DataExtraction 本工具可以从文件中按关键字提取数据和排序功能 [版本 0.88] BY Hong Wenjun
- 生产者与消费者问题(java多线程实现)
- STL的CSVEditor
- 头一回织围脖
- Window.setTimeout()与setInterval( )
- Very Useful Idioms I Truly Believed (To be continued...)
- AsyncTask实现异步处理任务
- it find no right for databank.
- 画UML类图时还用画出包图吗?
- ASP.net:程式员十大安全技巧