我需要使用有限数量的线程(目前使用newFixedThreadPool)来创建程序,但是我遇到了所有线程都是从开始创建,以惊人的速度填充内存的问题。Java线程池功能
我想防止这种情况。线程只能在执行前不久创建。
例如:我调用程序并指示它在池中使用2个线程。该程序应该创建&立即(显然)立即启动前2个线程,创建下2个等待前2个,并在那一刻等到一个或两个前2个结束执行。
我想过扩展执行器或FixedThreadPool等等。然而,我不知道如何从那里开始,并怀疑它是最好的解决方案。最简单的会让我的主线程睡眠间隔,这也不是很好...
在此先感谢!
它更有意义。但是,由于你的回答,我已经着手于生产者/消费者方法,这正是我所需要的:1生产者阅读文件,x(待定义)消费者。谢谢:) – cpf 2010-04-21 14:47:28
太棒了,很高兴它帮助;-) – Etienne 2010-04-21 16:43:45