使用ComletableFuture汇总多个线程返回结果

问题描述:计算一批正整数中质数的个数
使用方法:
使用CompletableFuture结合线程池 多线程统计质数的个数,最后汇总各个线程的数量。代码如下:

// 创建一个固定大小的线程池
ExecutorService executorService = Executors.newFixedThreadPool(10);

CompletableFuture<Integer> future1 = CompletableFuture.supplyAsync(() -> {
  int count = getPrimeNumberCount(2, 100000);
  System.out.println(Thread.currentThread().getName() + ", count = " + count);
  return count;
}, executorService);
CompletableFuture<Integer> future2 = CompletableFuture.supplyAsync(() -> {
  int count = getPrimeNumberCount(100000, 200000);
  System.out.println(Thread.currentThread().getName() + ", count = " + count);
  return count;
}, executorService);

System.out.println(future1.join() + future2.join());
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容