CompletionService的简单用法

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 17:27   2434   0

CompletionService的简单用法

解决方法:

1.测试方法,与线程池结合使用

public static void main(String[] args) throws Exception {

CallableDemo callable = new CallableDemo(1,100000);

CallableDemo callable2 = new CallableDemo(1,100);

ThreadPoolExecutor executor = new ThreadPoolExecutor(4, 5, 5L,TimeUnit.SECONDS, new LinkedBlockingDeque());

CompletionService csRef = new ExecutorCompletionService(executor);

csRef.submit(callable);

csRef.submit(callable2);

//CompletionService 的take()方法获取最先执行完的线程的Future对象。

System.out.println(csRef.take().get());

System.out.println(csRef.take().get());

}

2.线程类,实现Callable解决取返回值:http://www.yayihouse.com/yayishuwu/chapter/1945

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP