.\" -*- coding: utf-8 -*- .TH KySdkResource 3 "Wed Sep 20 2023" "1.0" "System Resource Monitoring Library" .SH NAME KySdkResource \- 获取当前系统资源占用信息类 .SH SYNOPSIS .nf .B #include .fi .SH DESCRIPTION .PP .B KySdkResource 类用于获取系统资源占用信息,包括: .RS .IP \(bu 2 物理内存总大小、使用率和使用量 .IP \(bu 2 实际可用和空闲的物理内存大小 .IP \(bu 2 所有应用申请的虚拟内存总量 .IP \(bu 2 Swap 分区总大小、使用率和空闲大小 .IP \(bu 2 CPU 瞬时使用率 .IP \(bu 2 操作系统开机时长 .RE .PP 该类继承自 .BR QObject . .SH "PUBLIC SLOTS" .PP .B "double getMemTotalKiB () const" .RS .PP 获取系统中物理内存总大小。 .PP .B 返回值: .RS .TP .B double 物理内存大小,KiB 为单位 .RE .RE .PP .B "double getMemUsagePercent () const" .RS .PP 获取物理内存使用率。 .PP .B 返回值: .RS .TP .B double 物理内存使用率 .RE .RE .PP .B "double getMemUsageKiB () const" .RS .PP 获取物理内存使用大小,注意 Buffer/Cache 被计算为已使用内存。 .PP .B 返回值: .RS .TP .B double 物理内存使用大小,KiB 为单位 .RE .RE .PP .B "double getMemAvailableKiB () const" .RS .PP 获取实际可用的物理内存大小,该数值约等于 Free + Buffer + Cache。 .PP .B 返回值: .RS .TP .B double 可用物理内存大小,KiB 为单位 .RE .RE .PP .B "double getMemFreeKiB () const" .RS .PP 获取实际空闲的物理内存大小,注意 Buffer/Cache 被计算为已使用内存。 .PP .B 返回值: .RS .TP .B double 空闲的物理内存大小,KiB 为单位 .RE .RE .PP .B "double getMemVirtAllocKiB () const" .RS .PP 获取所有应用申请的虚拟内存总量。 .PP .B 返回值: .RS .TP .B double 虚拟内存总申请量,KiB 为单位 .RE .RE .PP .B "double getMemSwapTotalKiB () const" .RS .PP 获取系统中 Swap 分区总大小。 .PP .B 返回值: .RS .TP .B double Swap 分区大小,KiB 为单位 .RE .RE .PP .B "double getMemSwapUsagePercent () const" .RS .PP 获取 Swap 分区使用率。 .PP .B 返回值: .RS .TP .B double Swap 分区使用率 .RE .RE .PP .B "double getMemSwapUsageKiB () const" .RS .PP 获取 Swap 分区使用量。 .PP .B 返回值: .RS .TP .B double Swap 分区使用量,KiB 为单位 .RE .RE .PP .B "double getMemSwapFreeKiB () const" .RS .PP 获取 Swap 分区空闲大小。 .PP .B 返回值: .RS .TP .B double Swap 分区空闲大小,KiB 为单位 .RE .RE .PP .B "double getCpuCurrentUsage () const" .RS .PP 获取 CPU 瞬时使用率。 .PP .B 返回值: .RS .TP .B double CPU 瞬时使用率,该值 < 1.00 .RE .RE .PP .B "QString getUpTime () const" .RS .PP 获取操作系统开机时长。 .PP .B 返回值: .RS .TP .B QString 开机时长 .RE .RE .SH "MEMORY USAGE EXPLANATION" .PP Linux 系统内存使用说明: .RS .TP .B MemTotal 系统总内存大小 .TP .B MemFree 完全空闲的内存 .TP .B MemAvailable 实际可用的内存(MemFree + Buffers + Cached) .TP .B Buffers/Cache 内核缓冲区使用的内存 .TP .B Swap 当物理内存不足时使用的磁盘空间 .RE .SH "EXAMPLE USAGE" .PP .nf #include #include #include 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; } .fi .SH "NOTES" .PP .IP \(bu 2 所有内存大小单位均为 KiB (1024 bytes) .IP \(bu 2 CPU 使用率返回值为 0.0 到 1.0 之间的小数 .IP \(bu 2 内存使用率计算时 Buffer/Cache 被计入已使用内存 .IP \(bu 2 MemAvailable 是实际可用的内存估算值 .SH "SEE ALSO" .BR QObject (3qt5), .BR D-Bus (1), .BR proc (5), .BR free (1), .BR top (1) .SH AUTHOR Generated automatically by Doxygen for kysdkdbus.h from the source code.