Java并发工具库:理解和应用ExecutorService的例子

原创 àì夳堔傛蜴生んèń 2024-12-01 20:03 50阅读 0赞

在Java的并发工具库中,ExecutorService是线程池接口,用于管理和控制执行任务的线程。以下是一个理解和应用ExecutorService的例子:

场景:假设我们有一个简单的任务,那就是计算1到100的所有整数的和。

代码实现:

  1. import java.util.concurrent.ExecutorService;
  2. import java.util.concurrent.Executors;
  3. public class SumCalculator {
  4. private ExecutorService executor;
  5. public SumCalculator() {
  6. // 创建一个线程池,这里我们创建一个固定大小的线程池
  7. this.executor = Executors.newFixedThreadPool(10); // 这里可以根据实际需要调整线程数
  8. }
  9. public long calculateSum() throws InterruptedException {
  10. // 提交任务到线程池,这里计算所有整数的和的任务
  11. final Long sumTaskResult = executor.submit(() -> {
  12. long result = 0;
  13. for (int i = 1; i <= 100; i++) {
  14. result += i;
  15. }
  16. return result;
  17. })).get();
  18. // 确保线程池已关闭
  19. executor.shutdown();
  20. return sumTaskResult;
  21. }
  22. public static void main(String[] args) throws InterruptedException {
  23. SumCalculator calculator = new SumCalculator();
  24. long sum = calculator.calculateSum();
  25. System.out.println("Sum of 1 to 100 is: " + sum);
  26. }
  27. }

在这个例子中,我们创建了一个ExecutorService来管理和控制线程。然后提交一个计算所有整数和的任务到线程池,最后获取并打印结果。

文章版权声明:注明蒲公英云原创文章,转载或复制请以超链接形式并注明出处。

发表评论

表情:
评论列表 (有 0 条评论,50人围观)

还没有评论,来说两句吧...

相关阅读