java如何创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待。求代码

 我来答
四川源码时代科技有限公司
2017-01-13 · 让每一名学员高薪就业
四川源码时代科技有限公司
源码时代IT培训,即成都源代码教育咨询有限公司,专注Java、PHP、UI设计、H5前端培训,源码时代致力于打造中国高端IT培训品牌,旨在为每一名前来培训的学子提供良好的服务。
向TA提问
展开全部
package test; 
import java.util.concurrent.ExecutorService; 
import java.util.concurrent.Executors; 
public class ThreadPoolExecutorTest { 
public static void main(String[] args) { 
ExecutorService fixedThreadPool = Executors.newFixedThreadPool(3); 
for (int i = 0; i < 10; i++) { 
final int index = i; 
fixedThreadPool.execute(new Runnable() { 
public void run() { 
try { 
System.out.println(index); 
Thread.sleep(2000); 
} catch (InterruptedException e) { 
e.printStackTrace(); 


}); 


}

因为线程池大小为3,每个任务输出index后sleep 2秒,所以每两秒打印3个数字。

定长线程池的大小最好根据系统资源进行设置。如Runtime.getRuntime().availableProcessors()

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式