中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在java中利用CountDownLatch實現并行計算

發布時間:2021-05-14 17:59:12 來源:億速云 閱讀:145 作者:Leah 欄目:編程語言

這期內容當中小編將會給大家帶來有關怎么在java中利用CountDownLatch實現并行計算,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

具體內容如下

import java.util.concurrent.CountDownLatch;


public class ParallelComputing {
  private int[] nums;
  private String[] info;
  private CountDownLatch countDownLatch;

  public ParallelComputing(String[] info) {
    this.info = info;
    int size = info.length;
    nums = new int[size];
    this.countDownLatch = new CountDownLatch(size);
  }

  public void calc(String line, int index) throws InterruptedException {
    String[] numbers = line.split(",");
    int total = 0;
    for (String num : numbers) {
      total += Integer.parseInt(num);
    }
    Thread.sleep(5000);
    nums[index] = total;
    countDownLatch.countDown();
    System.out.println(Thread.currentThread().getName() + "執行計算任務..." + line + ",結果為:" + total);
  }

  public void sum() {
    System.out.println("匯總線程開始執行...");
    int total = 0;
    for (int i : nums) {
      total += i;
    }
    System.out.println("匯總線程結束執行...結果為:" + total);
  }

  public void calcSum() throws InterruptedException {
    int size = info.length;
    for (int i = 0; i < size; i++) {
      final int j = i;
      new Thread(() -> {
        try {
          calc(info[j], j);
        } catch (InterruptedException e) {
          e.printStackTrace();
        }
      }).start();
    }
    countDownLatch.await();
    sum();
  }

  public static void main(String[] args) throws InterruptedException {
    long start = System.currentTimeMillis();
    String[] info = {
        "2,22",
        "3,33",
        "232,32,76,84",
        "99,45,1"
    };
    ParallelComputing parallelComputing = new ParallelComputing(info);
    parallelComputing.calcSum();
    long end = System.currentTimeMillis();
    System.out.println(end - start);
  }
}

Java有哪些集合類

Java中的集合主要分為四類:1、List列表:有序的,可重復的;2、Queue隊列:有序,可重復的;3、Set集合:不可重復;4、Map映射:無序,鍵唯一,值不唯一。

上述就是小編為大家分享的怎么在java中利用CountDownLatch實現并行計算了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

天全县| 九寨沟县| 道真| 元谋县| 嘉峪关市| 明水县| 鄯善县| 镶黄旗| 潼关县| 许昌县| 运城市| 郯城县| 长汀县| 攀枝花市| 屏东市| 钟山县| 东乡族自治县| 新闻| 克拉玛依市| 商城县| 灵川县| 海南省| 萨迦县| 华安县| 莲花县| 金溪县| 亳州市| 明光市| 怀远县| 大埔县| 吉水县| 榆树市| 台中县| 通山县| 滁州市| 洮南市| 嘉定区| 贺兰县| 光山县| 聂拉木县| 忻州市|