成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

線程數量怎么設置才最合理

開發 前端
在程序開發中,常常為了提高性能,我們使用多線程進行開發,而針對多線程常常使用線程池來處理,線程池可以帶來很多好處,有興趣的可以看看之前干貨君寫的文章:線程池ThreadPool看完這篇就夠了

 在程序開發中,常常為了提高性能,我們使用多線程進行開發,而針對多線程常常使用線程池來處理,線程池可以帶來很多好處,有興趣的可以看看之前干貨君寫的文章:線程池ThreadPool看完這篇就夠了

 

[[357346]] 

 

那么現在有個問題來了,在應用中,針對多線程開發,線程數量我們要怎么設置才最合理呢?是不是越多越好?

當然不是,在多線程中,不得不提的上下文切換

上下文切換

首先在單核CPU中,也是可以處理多線程的,只是CPU通過給每個線程分配CPU時間片來處理的,假設我們有A、B兩個線程執行任務,CPU在非常短的時間(時間片)執行A線程,然后再執行B線程,如此往復執行,不停的切換(切換時保持之前的狀態),由于時間片的間隙非常短,讓我們感覺是同時執行的,即多線程,而這種切換就叫上下文切換。

從上面的描述我們可以知道,上下文切換,必然會出現之前的狀態保持和啟動,必然會導致性能的損耗,因此多線程的數量多就不一定快,也就說明了線程數量不是越多越好。

那么怎么合理的設置線程數量呢?

多線程任務分類

通常針對多線程一般分為兩類場景:

IO密集型:IO密集型通常指程序運行期間,大部分的耗時是用來進行I/O操作,而這個時間線程不會占用CPU來處理。

CPU密集型:CPU密集型通常是指系統運行時會消耗掉大量的CPU資源,例如需要大量的計算,一些復雜運算,邏輯處理之類的。

因此針對不同場景線程的數量設置也不一樣

I/O密集型

由于系統運行大部分都是在進行I/O交互,并不會暫用cpu資源,因此可以提高線程數,對線程數可以用以下計算公式:

最佳線程數 = ((線程等待時間+線程CPU時間)/線程CPU時間 )* CPU核心數

這樣假設線程無等待,最佳線程數 = 1 * CPU核心數,而實際上線程一般都會存在等待時間,可以保守認為等待時間和線程CPU時間一樣,即 2 * CPU核心數,因此一般都設置為

最佳線程數 = CPU核心數 * 2

CPU密集型

對于CPU密集型的,絕大部分都是利用cpu資源進行計算,因此一般對于此類場景,最佳線程數量設置為CPU核心線程數+1,以充分利用多核心CPU的處理能力。

最佳線程數 = CPU核心數 + 1

java獲取cpu核心數的方法如下:

Runtime.getRuntime().availableProcessors()

 

責任編輯:姜華 來源: 今日頭條
相關推薦

2025-06-27 10:25:43

2020-06-30 11:36:45

錯誤碼合理開發

2023-08-01 12:45:39

用戶細分消費習慣

2022-12-27 09:57:41

線程數CPU

2022-04-24 08:23:19

Redis內存淘汰策略

2021-06-05 06:00:20

微軟Windows 10Windows

2015-08-20 10:19:08

數據中心

2018-04-23 14:33:31

筆記本接口布局

2019-09-26 10:19:27

設計電腦Java

2024-07-26 10:42:30

2013-03-11 10:04:16

維護局域網設置交換機交換機設備

2012-10-17 09:50:47

HBase

2010-01-04 12:53:33

交換機端口設置

2021-11-02 12:33:11

UWB定位技術網絡技術

2018-07-19 05:13:38

2011-08-08 09:10:09

2022-12-07 10:56:23

線程池監控執行超時

2018-06-29 11:08:45

數據

2021-09-23 15:55:50

線程池語言公式

2017-09-17 19:43:10

BIOSwindows硬盤
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 夜夜久久 | 欧美在线一区二区三区 | heyzo在线| 在线观看黄色 | 成人在线视频网 | 欧美精品第一区 | 亚洲精品福利在线 | www.操.com| 高清视频一区二区三区 | 日韩精品一区二区三区中文在线 | 久久夜视频 | 99视频精品| 亚洲福利在线观看 | 国产一区二区三区色淫影院 | 九九精品视频在线 | 亚洲一区二区视频在线播放 | 国产在线网站 | 亚洲精品一区二区久 | 久久亚洲一区 | 做a视频 | 日韩久久成人 | 日韩欧美一区二区三区四区 | 热99在线 | 日本a∨精品中文字幕在线 亚洲91视频 | 成人在线影视 | 日韩视频国产 | 国产色婷婷精品综合在线手机播放 | 青青久久av北条麻妃海外网 | 亚洲精品电影在线观看 | 久久精品一区二区 | 成av在线 | 日本超碰 | 免费成人毛片 | 亚洲视频一区 | 免费久久久 | 亚洲精品久久久久中文字幕欢迎你 | 黄色骚片 | 国产精品国产三级国产aⅴ原创 | 国产999精品久久久 午夜天堂精品久久久久 | 成人在线免费视频 | 懂色中文一区二区三区在线视频 |