改進後的計算CPU的使用率實現

2021-06-15 11:08:49 字數 844 閱讀 9401

網上查閱了一些資料,看到最多的乙個文件,內部是用sleep(1)這樣的實現,而sleep這個函式是阻塞睡眠,相當於讓cpu在這一秒鐘內停運,對整個系統的影響還是非常大的。更嚴重的是影響通訊,甚至錯誤。

其實修改不是很多,可以使用alarm呼叫等等。

typedef struct cpu_info

cpu_use;

void get_cpu_node_info (cpu_use *cpust);

int calculate_cpu_use (cpu_use *o, cpu_use *n);

int get_cpustat_of_use( void );

/*

* @brief : for a time the state of the cpu

* @param[out] : struct cpu_use

* @return :

*/void get_cpu_node_info (cpu_use *cpust)

/* * @brief : occupation calculation rate of cpu

* @return : rate of cpu

*/int calculate_cpu_use (cpu_use *o, cpu_use *n)

/** @brief : to obtain the cpu utilization rate

* @return : rate

*/cpu_use cpu_stat1;

int get_cpustat_of_use( void )

Linux計算cpu使用率

計算總的 cpu 使用率 totalcpuuse 1 取樣兩個足夠短的時間間隔的 cpu 快照,即讀取 proc stat 檔案,獲取兩個時間點的下列資料 cput1 user1,nice1,system1,idle1,iowait1,irq1,softirq1,stealstolen1,guest...

C 計算windows的cpu使用率

include include include using namespace std int64 comparefiletime filetime time1,filetime time2 轉換為整數時間 int64 a time1.dwhighdatetime 32 time1.dwlowdat...

獲得cpu的使用率 c )

include include include define systembasicinformation 0 define systemperformanceinformation 2 define systemtimeinformation 3 define li2double x double...