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

溫馨提示×

溫馨提示×

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

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

Java線程池運行狀態監控實現解析

發布時間:2020-09-25 19:43:49 來源:腳本之家 閱讀:115 作者:lshan 欄目:編程語言

在實際開發過程中,在線程池使用過程中可能會遇到各方面的故障,如線程池阻塞,無法提交新任務等。

如果你想監控某一個線程池的執行狀態,線程池執行類 ThreadPoolExecutor 也給出了相關的 API, 能實時獲取線程池的當前活動線程數、正在排隊中的線程數、已經執行完成的線程數、總線程數等。

總線程數 = 排隊線程數 + 活動線程數 + 執行完成的線程數。

線程池使用示例:

private static ExecutorService es = new ThreadPoolExecutor(50, 100, 0L, TimeUnit.MILLISECONDS,
    new LinkedBlockingQueue<Runnable>(100000));
 
public static void main(String[] args) throws Exception {
  for (int i = 0; i < 100000; i++) {
    es.execute(() -> {
      System.out.print(1);
      try {
        Thread.sleep(1000);
      } catch (InterruptedException e) {
        e.printStackTrace();
      }
    });
  }
 
  ThreadPoolExecutor tpe = ((ThreadPoolExecutor) es);
 
  while (true) {
    System.out.println();
 
    int queueSize = tpe.getQueue().size();
    System.out.println("當前排隊線程數:" + queueSize);
 
    int activeCount = tpe.getActiveCount();
    System.out.println("當前活動線程數:" + activeCount);
 
    long completedTaskCount = tpe.getCompletedTaskCount();
    System.out.println("執行完成線程數:" + completedTaskCount);
 
    long taskCount = tpe.getTaskCount();
    System.out.println("總線程數:" + taskCount);
 
    Thread.sleep(3000);
  }
 
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

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

AI

建水县| 赤峰市| 青州市| 松江区| 安宁市| 张家界市| 东安县| 平定县| 法库县| 栾城县| 富民县| 宁德市| 子洲县| 玉山县| 都兰县| 潮安县| 库尔勒市| 南川市| 酉阳| 二手房| 绥化市| 武邑县| 大邑县| 额敏县| 巩留县| 和顺县| 泸溪县| 光泽县| 辽阳市| 饶阳县| 东城区| 疏附县| 琼结县| 蓬溪县| 得荣县| 乐至县| 桦南县| 岱山县| 夹江县| 龙海市| 鸡泽县|