KySdkResource3
获取当前系统资源占用信息类
Usage
#include <kysdkdbus.h>
Overview
KySdkResource 类用于获取系统资源占用信息,包括:
•
|
物理内存总大小、使用率和使用量 |
|---|---|
•
|
实际可用和空闲的物理内存大小 |
•
|
所有应用申请的虚拟内存总量 |
•
|
Swap 分区总大小、使用率和空闲大小 |
•
|
CPU 瞬时使用率 |
•
|
操作系统开机时长 |
该类继承自 QObject.
Public slots
double getMemTotalKiB () const
获取系统中物理内存总大小。
返回值:
double-
物理内存大小,KiB 为单位
double getMemUsagePercent () const
获取物理内存使用率。
返回值:
double-
物理内存使用率
double getMemUsageKiB () const
获取物理内存使用大小,注意 Buffer/Cache 被计算为已使用内存。
返回值:
double-
物理内存使用大小,KiB 为单位
double getMemAvailableKiB () const
获取实际可用的物理内存大小,该数值约等于 Free + Buffer + Cache。
返回值:
double-
可用物理内存大小,KiB 为单位
double getMemFreeKiB () const
获取实际空闲的物理内存大小,注意 Buffer/Cache 被计算为已使用内存。
返回值:
double-
空闲的物理内存大小,KiB 为单位
double getMemVirtAllocKiB () const
获取所有应用申请的虚拟内存总量。
返回值:
double-
虚拟内存总申请量,KiB 为单位
double getMemSwapTotalKiB () const
获取系统中 Swap 分区总大小。
返回值:
double-
Swap 分区大小,KiB 为单位
double getMemSwapUsagePercent () const
获取 Swap 分区使用率。
返回值:
double-
Swap 分区使用率
double getMemSwapUsageKiB () const
获取 Swap 分区使用量。
返回值:
double-
Swap 分区使用量,KiB 为单位
double getMemSwapFreeKiB () const
获取 Swap 分区空闲大小。
返回值:
double-
Swap 分区空闲大小,KiB 为单位
double getCpuCurrentUsage () const
获取 CPU 瞬时使用率。
返回值:
double-
CPU 瞬时使用率,该值 < 1.00
QString getUpTime () const
获取操作系统开机时长。
返回值:
QString-
开机时长
Memory usage explanation
Linux 系统内存使用说明:
|
系统总内存大小 |
|---|---|
|
完全空闲的内存 |
|
实际可用的内存(MemFree + Buffers + Cached) |
|
内核缓冲区使用的内存 |
|
当物理内存不足时使用的磁盘空间 |
Example usage
#include <kysdkdbus.h>
#include <QCoreApplication>
#include <QDebug>
int main(int argc, char *argv[])
{
QCoreApplication app(argc, argv);
KySdkResource resource;
// 获取内存信息
double memTotal = resource.getMemTotalKiB();
double memUsage = resource.getMemUsagePercent();
double memAvailable = resource.getMemAvailableKiB();
// 获取 CPU 使用率
double cpuUsage = resource.getCpuCurrentUsage();
// 获取系统运行时间
QString uptime = resource.getUpTime();
qDebug() << "内存总量:" << memTotal << "KiB";
qDebug() << "内存使用率:" << (memUsage * 100) << "%";
qDebug() << "可用内存:" << memAvailable << "KiB";
qDebug() << "CPU 使用率:" << (cpuUsage * 100) << "%";
qDebug() << "系统运行时间:" << uptime;
return 0;
}
Notes
•
|
所有内存大小单位均为 KiB (1024 bytes) |
|---|---|
•
|
CPU 使用率返回值为 0.0 到 1.0 之间的小数 |
•
|
内存使用率计算时 Buffer/Cache 被计入已使用内存 |
•
|
MemAvailable 是实际可用的内存估算值 |