一个线程类
来源:互联网 发布:公司网络监控能看到啥 编辑:程序博客网 时间:2024/05/22 01:58
package ch5;
public class Mythread {
public static void main(String[] args){
Queue q=new Queue();
Producer p=new Producer(q);
p.start();
Consumer c=new Consumer(q);
c.start();
}
}
class Producer extends Thread
{
Queue q;
Producer(Queue q){
this.q=q;
}
public void run(){
for(int i=0;i<10;i++){
q.put(i);
System.out.println("Producer put :"+i);
}
}
}
class Consumer extends Thread
{
Queue q;
Consumer(Queue q){
this.q=q;
}
public void run(){
while(true){
System.out.println("Producer get :"+q.get());
}
}
}
class Queue{
int value;
boolean bFull=false;
public synchronized void put(int i){
if(!bFull)
value=i;
bFull=true;
notify();
try{
wait();
}catch(Exception e){
e.printStackTrace();
}
}
public synchronized int get(){
if(!bFull)
try{
wait();
}catch(Exception e){
e.printStackTrace();
}
bFull=false;
notify();
return value;
}
}
- 一个线程同步类
- 一个线程类
- 一个线程封装类
- 一个简单的线程类
- 一个操作线程的类
- 分享一个事务处理线程类
- 封装一个Window线程类
- JAVA 线程 开启线程 一个类…
- Python线程类首先是一个类
- 一个下载文件的线程类
- 用线程函数来访问一个类
- 一个简单线程类的实现
- 一个高效率的线程池类
- 一个高效率的线程池类
- 一个最经典的线程类
- 一个Windows C++的线程类实现
- 一个封装好的线程类
- 一个高效率的线程池类
- 应用XMLHttpRequest和AJAX开发Web应用带来的麻烦
- JBoss 4应用服务器Web开发人员参考手册(2):server.xml
- 编辑部要走的“路线”
- ACE的源码划分
- 猜迷 技巧
- 一个线程类
- JavaIO 重定向
- Lua源码分析(1) -- 简介
- 程序开发之“道”
- 如何在C/C++语言中调用 sqlite 的函数
- 这个迷语网站不错,都是字迷的
- 《SerialPort (RS-232 Serial COM Port) in C# .NET》in Coad's Code
- Lua源码分析(2) -- 对象表示
- 请教IBM Websphere MQ问题!朋友们,帮我看看是什么错误阿!万分感谢!