Java native方法availableProcessors()获取处理器数量的底层C++实现
生活随笔
收集整理的這篇文章主要介紹了
Java native方法availableProcessors()获取处理器数量的底层C++实现
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
夫陶公清風千古,余又何人,敢稱庶幾
個人博客地址:http://blog.breez.work
📖別扯沒用的、看代碼
運行下面代碼就這樣子,代碼有些少,尷尬😅:
📝源碼分析
public native int availableProcessors();進去一看,原來是個本地方法,傳說native方法都是用C++實現的,我忍不住卷土重來,再寫C++,不過,用C也是闊以的,哈哈😄!(C++菜的摳jio)
先生們,奧特曼!請看C++ SYSTEM_INFO結構體,它闊以獲取當前計算機系統的信息。包括處理器的架構和類型、系統中的處理器數量、頁面大小和其他此類信息。
typedef struct _SYSTEM_INFO {union {DWORD dwOemId;struct {WORD wProcessorArchitecture;WORD wReserved;} DUMMYSTRUCTNAME;} DUMMYUNIONNAME;DWORD dwPageSize;LPVOID lpMinimumApplicationAddress;LPVOID lpMaximumApplicationAddress;DWORD_PTR dwActiveProcessorMask;DWORD dwNumberOfProcessors;DWORD dwProcessorType;DWORD dwAllocationGranularity;WORD wProcessorLevel;WORD wProcessorRevision; } SYSTEM_INFO, *LPSYSTEM_INFO;在這里我只說下:DWORD dwNumberOfProcessors;這個東西用法,它的作用是獲取當前系統邏輯處理器數量。
聽我口令:上代碼!
#include "windows.h" #include "unistd.h" #include<stdio.h> int main() {SYSTEM_INFO sysInfo;GetSystemInfo(&sysInfo);int cpuCore = sysInfo.dwNumberOfProcessors;printf("%d 核\n",cpuCore) ;return 0;}
挺起來好像很牛逼的樣子,其實啥也不是,菜鳥!!
想了解更多有關這方面的衰哥可以移步微軟官方去看文檔
青山不改,綠水長流,他日江湖相見,我必刺🗡各位一刀。告辭!
總結
以上是生活随笔為你收集整理的Java native方法availableProcessors()获取处理器数量的底层C++实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: bootstrap table 搜索列f
- 下一篇: Linux操作系统yum常用命令