1. 程式人生 > >執行緒池最大執行緒數判斷

執行緒池最大執行緒數判斷

很多時候用到執行緒池技術,那執行緒池中最大執行緒數是多少,或者多少執行緒是系統執行最穩定的。

int maxthread = Runtime.getRuntime().availableProcessors() * 25;//最大執行緒數=cpu個數*25,超過這個值系統執行會不穩定(僅限於伺服器,自己的電腦不能達到這個數)。

Runtime.getRuntime().totalMemory();// Java 虛擬機器中的記憶體總量

Runtime.getRuntime().freeMemory()//Java 虛擬機器預留記憶體

Runtime.getRuntime().maxMemory()//Java 虛擬機器試圖使用的最大記憶體量

計算執行緒可有使用的記憶體  理論上:最大記憶體量- 虛擬機器預留記憶體,實際上:虛擬機器中的記憶體總量-虛擬機器預留記憶體