Class Producer implements Runnable
Q q;
Producer(Q q) {
this.q = q; // line- 5
new Thread(this, "Producer").start();
}
public void run(){
int i = 0;
while(true){
q.put(i++);
}
}
}
嘿,任何人都可以请告诉我: 1.在第5行,这是哪些q? 2.为什么在第6行没有实例化对象?直接启动函数被调用? 谢谢...线程通信程序
这很可能是杀死你的系统的好方法。根据实现方式的不同,q.put()可能会为每次调用创建一个或两个对象,从而导致GC线程达到最大值。默认行为是使用系统上的所有内核来执行此操作。除非你有非常快的消费者,否则你很可能会耗尽内存,这至少会阻止制片人。在main()函数中,新生产者(q)(其中q是Q的一个对象)中的 – 2011-06-15 09:33:29