多线程问题(生产者和消费者)
来源:互联网 发布:下载淘宝助理免费 编辑:程序博客网 时间:2024/06/06 02:53
class Message {
privateString title;
privateString content;
privateboolean flag = true;
//flag == true:表示可以生产,但是不能取走
//flag == false:表示可以取走,但是不能生产
publicsynchronized void set(String title, String content) {
if(this.flag == false) { //已经生产过了,不能生产
try{
super.wait(); //等待
}catch (InterruptedException e) {
e.printStackTrace();
}
}
this.title= title;
try{
Thread.sleep(200);
}catch (InterruptedException e) {
e.printStackTrace();
}
this.content= content;
this.flag= false; //已经生产完成,修改标志位
super.notify(); //唤醒等待线程
}
public synchronized void get() {
if(this.flag == true) { //未生产,不能取走
try{
super.wait(); //等待
}catch (InterruptedException e) {
e.printStackTrace();
}
}
try{
Thread.sleep(100);
}catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println(this.title+ " --> " +this.content);
this.flag = true; //已经取走了,可以继续生产
super.notify(); //唤醒等待线程
}
// setter、getter略
}}
}- 多线程问题(生产者和消费者)
- 生产者消费者问题--多线程
- 多线程--生产者消费者问题
- 多线程+生产者、消费者问题
- 多线程生产者消费者问题
- 多线程(生产者-消费者问题)
- 多线程生产者消费者问题
- 多线程--生产者消费者问题(wait和notify方法)
- Java多线程解决生产者和消费者问题(面向对象)
- Java 多线程编程(生产者和消费者问题以及死锁)
- 多线程Thread生产者和消费者的问题
- 多线程 消费者和生产者的问题
- linux 多线程生产者和消费者问题
- 生产者和消费者的多线程问题
- 多线程的生产者和消费者问题
- 多线程生产者和消费者
- 多线程,生产者和消费者
- 多线程,生产者和消费者
- OrientDB初识-学习文档
- 智能指针(一)之引入
- mysql的单引号和双引号的区别??(基本没有)
- 需求处理的妥协和更好的设计过程模型
- hdu 1285 确定比赛名次
- 多线程问题(生产者和消费者)
- oozie框架案例之shellAction
- 背包四讲及其优化与证明
- qwt绘制,以及画面缩放、平移操作
- 蓄水池抽样算法 (Reservoir Sampling Algorithm)
- 小白学tkinter(Listbox组件 多选组件)
- 鹧鸪天·彩袖殷勤捧玉钟
- 大暴搜 [NOIP2009]靶形数独
- C语言控制鼠标自动画图