谁能帮我解析下这一小段java程序的意思啊
Producer(Qq){this.q=q;newThread(this,"Producer").start();}publicvoidrun(){inti=0;whil...
Producer(Q q)
{
this.q = q;
new Thread(this, "Producer").start();
}
public void run()
{
int i = 0;
while(true)
{
q.put(i++);
}
}
上面的(Q q)
this q=q;
(this,"Producer")
q.put(i++);
是什么意思啊?求详细点
字数超了 只好截图 原谅 展开
{
this.q = q;
new Thread(this, "Producer").start();
}
public void run()
{
int i = 0;
while(true)
{
q.put(i++);
}
}
上面的(Q q)
this q=q;
(this,"Producer")
q.put(i++);
是什么意思啊?求详细点
字数超了 只好截图 原谅 展开
5个回答
展开全部
代码不全,你能给整个类的代码都弄出来吗?
我给你每一行解释!
我给你每一行解释!
追问
哦 好的 谢谢啦
追答
class Consumer implements Runnable { //声明一个类并且实现Runnable接口
Q q;//定义一个变量
Consumer(Q q) { //构造方法
this.q = q; //每次构造就给变量q赋值
new Thread(this, "Consumer").start(); //启动线程, (this,"Producer")这是Thread的一个构造方法里面的两个参数。
}
public void run() { //run()是重新Runnable 里面的run()
while(true) {
q.get();
}
}
}
class PC {
public static void main(String args[]) {
Q q = new Q(); //new 一个Q类的实例,调用默认的构造方法
new Producer(q); //new Producer类的实例,调用Producer(Q q)这个
构造方法。
new Consumer(q); //new Consumer类的实例,调用Consumer(Q q)这个构
造方法。
System.out.println("Press Control-C to stop."); //打印输出。
}
}
至于q.put(i++);因为我没看见你put()方法,所以不好解答。
展开全部
Producer(Q q)//Q是其他程序上定义的。未知。
{
this.q = q; //把(Q q) 赋值给q
new Thread(this, "Producer").start();//声明线程并且开始线程
}
public void run()
{
int i = 0;
while(true)
{
q.put(i++); //这是线程要执行的内容了
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
(Q q) q为Q的一个对象
this q=q将此类的中的q地址指向q,通白说就是:将传入的q赋给此类总的q
(this,"Producer") 线程Thread的构造方法
q.put(i++); 调用q中的put方法,i++ i自增1
this q=q将此类的中的q地址指向q,通白说就是:将传入的q赋给此类总的q
(this,"Producer") 线程Thread的构造方法
q.put(i++); 调用q中的put方法,i++ i自增1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-09
展开全部
应该是演示 生产者 消费者 信号量的代码片段吧。
每当来一个Q q(应该是个队列或者管道之类的)时,生产者负责上产一个线程new Thread(this, "Producer").start();
线程就是本身这个类new了自己的一个对象,(this,"Producer")是构造方法,说明线程有本身这个类构建,名字叫“Producer”(生产者);
这个线程就负责q.put(i++);往队列中生产产品i,
每当来一个Q q(应该是个队列或者管道之类的)时,生产者负责上产一个线程new Thread(this, "Producer").start();
线程就是本身这个类new了自己的一个对象,(this,"Producer")是构造方法,说明线程有本身这个类构建,名字叫“Producer”(生产者);
这个线程就负责q.put(i++);往队列中生产产品i,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询