高性能计算在Java中的实现:并行计算案例解析

原创 小灰灰 2024-10-13 23:33 162阅读 0赞

在Java中,我们可以利用Java的并发机制(如多线程、Fork/Join框架等)来实现高性能计算的并行计算。

以下是一个简单的并行计算案例,使用Java的ExecutorService进行任务分发:

  1. import java.util.concurrent.*;
  2. public class ParallelComputingExample {
  3. private static final int NUM_THREADS = 4; // 设置线程数量
  4. public static void main(String[] args) {
  5. // 创建一个固定大小的线程池
  6. ExecutorService executor = Executors.newFixedThreadPool(NUM_THREADS);
  7. // 定义任务
  8. List<Runnable> tasks = new ArrayList<>();
  9. for (int i = 0; i < 100; i += 2) { // 这是一个简单的计算任务
  10. tasks.add(new CalculateTask(i));
  11. }
  12. // 执行任务
  13. executor.invokeAll(tasks);
  14. // 关闭线程池
  15. executor.shutdown();
  16. }
  17. static class CalculateTask implements Runnable {
  18. private int taskId;
  19. public CalculateTask(int taskId) {
  20. this.taskId = taskId;
  21. }
  22. @Override
  23. public void run() {
  24. System.out.println("Task " + taskId + " is being processed...");
  25. // 这里是你的计算逻辑,例如加法、乘法等
  26. try {
  27. Thread.sleep(2000); // 模拟耗时操作
  28. } catch (InterruptedException e) {
  29. e.printStackTrace();
  30. }
  31. }
  32. }
  33. }

在这个例子中,我们创建了一个线程池,并将100个计算任务分发到线程池中。每个任务都是一个实现了Runnable接口的类,其中包含了具体的计算逻辑。

当所有任务执行完毕后,我们关闭了线程池。

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

发表评论

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

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

相关阅读