激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|編程技術(shù)|正則表達式|C/C++|

服務(wù)器之家 - 編程語言 - JAVA教程 - java線程池:獲取運行線程數(shù)并控制線程啟動速度的方法

java線程池:獲取運行線程數(shù)并控制線程啟動速度的方法

2020-10-31 23:32腳本之家 JAVA教程

下面小編就為大家?guī)硪黄猨ava線程池:獲取運行線程數(shù)并控制線程啟動速度的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

java里, 我們可以使用Executors.newFixedThreadPool 來創(chuàng)建線程池, 然后就可以不停的創(chuàng)建新任務(wù),并用線程池來執(zhí)行了。

在提交任務(wù)時,如果線程池已經(jīng)被占滿,任務(wù)會進到一個隊列里等待執(zhí)行。

這種機制在一些特定情況下會有些問題。今天我就遇到一種情況:創(chuàng)建線程比線程執(zhí)行的速度要快的多,而且單個線程占用的內(nèi)存又多,所以很快內(nèi)存就爆了。

想了一個辦法,就是在提交任務(wù)之前,先檢查目前正在執(zhí)行的線程數(shù)目,只有沒把線程池占滿的時候在去提交任務(wù)。

代碼很簡單:

?
1
2
3
4
5
6
7
8
9
int threadCount = ((ThreadPoolExecutor)executor).getActiveCount();
//              System.out.println("running : " + threadCount);
              while (threadCount == POOL_SIZE) {
                TimeUnit.MILLISECONDS.sleep(1);
                threadCount = ((ThreadPoolExecutor)executor).getActiveCount();
//                System.out.println("running : " + threadCount);
              }
 
              executor.execute

以上這篇java線程池:獲取運行線程數(shù)并控制線程啟動速度的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持服務(wù)器之家。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产精品一区二区手机在线观看 | 国产成人精品一区在线播放 | 国产一区二区视频网站 | 天天鲁在线视频免费观看 | 久久精品视频16 | 色综合一区二区 | 欧美日韩高清在线观看 | 国产影视| 免费观看黄色一级视频 | 91成人久久 | 经典三级在线视频 | 久久精精 | 激情欧美在线 | 综合日韩av | 日本一级特级 | 色婷婷久久一区二区 | 暴力强行进如hdxxx | 午夜视频色 | 成年免费视频黄网站在线观看 | av黄色片网站 | www.狠狠插.com| 少妇一级淫片免费放4p | 一本视频在线观看 | 国产一区二区在线免费播放 | 99成人在线 | 97久久曰曰久久久 | 激情在线观看视频 | 88xx成人精品视频 | 日本中文字幕网址 | 色婷婷久久一区二区 | 国产精品探花在线观看 | 免费观看又色又爽又黄的崩锅 | 蜜桃网站在线观看 | 欧美一级高清免费 | 91社区在线观看 | 91精品久久香蕉国产线看观看 | 国产一级午夜 | 亚洲第一成人久久网站 | 久久久久97国产精 | 男女羞羞在线观看 | 国产成人精品一区二区三区电影 |