博客
关于我
delphi 获取当前进程的cpu占用率
阅读量:734 次
发布时间:2019-03-21

本文共 771 字,大约阅读时间需要 2 分钟。

TProcessCpuUsage类用于监控CPU使用情况,该类由两部分组成: Create方法初始化数据,Current方法返回当前CPU使用率。以下是类的详细说明:

类TProcessCpuUsage:

  • FLastUsed记录上一次使用时间
  • FLastTime记录上一次监测时间
  • FCpuCount记录CPU核心数量

class function Create:

  • 返回新实例的TProcessCpuUsage
  • 初始化FLastUsed为0
  • 初始化FLastTime为0
  • 初始化FCpuCount为0

function Current:

  • 返回当前CPU使用率(单值)
  • 获取目前系统时间ACurTime
  • 调用FileTimeToI64函数将KernelTime和UserTime转换为UInt64
  • 计算Usage总和
  • 比较FLastTime和FLastUsed,计算CPU使用率
  • 如果FLastTime>0,计算平均使用率并分配到FCpuCount
  • 否则,使用GetCPUCount获取当前CPU数量
  • 更新FLastUsed为当前Usage
  • 更新FLastTime为当前ACurTime

function GetCPUCount:

  • 调用GetSystemInfo函数获取SysInfo.dwNumberOfProcessors
  • 返回CPU核心数量

方法实现:

  • FileTimeToI64函数将TFileTime转换为Int64
  • GetSystemInfo函数获取系统信息
  • GetTickCount函数获取系统时间

注意事项:

  • 使用ProcessCpuUsage的Current值进行判断:ProcessCpuUsage.Current >=25则触发相应逻辑

该类适用于个人项目或需要轻量级CPU性能监控的场景,适合在Windows系统中使用。

转载地址:http://mfegz.baihongyu.com/

你可能感兴趣的文章
Node-RED中实现HTML表单提交和获取提交的内容
查看>>
Node-RED中将CSV数据写入txt文件并从文件中读取解析数据
查看>>
Node-RED中建立TCP服务端和客户端
查看>>
Node-RED中建立Websocket客户端连接
查看>>
Node-RED中建立静态网页和动态网页内容
查看>>
Node-RED中解析高德地图天气api的json数据显示天气仪表盘
查看>>
Node-RED中连接Mysql数据库并实现增删改查的操作
查看>>
Node-RED中通过node-red-ui-webcam节点实现访问摄像头并截取照片预览
查看>>
Node-RED中配置周期性执行、指定时间阶段执行、指定时间执行事件
查看>>
Node-RED安装图形化节点dashboard实现订阅mqtt主题并在仪表盘中显示温度
查看>>
Node-RED怎样导出导入流程为json文件
查看>>
Node-RED订阅MQTT主题并调试数据
查看>>
Node-RED通过npm安装的方式对应卸载
查看>>
node-request模块
查看>>
node-static 任意文件读取漏洞复现(CVE-2023-26111)
查看>>
Node.js 8 中的 util.promisify的详解
查看>>
node.js debug在webstrom工具
查看>>
Node.js HTTP模块详解:创建服务器、响应请求与客户端请求
查看>>
Node.js RESTful API如何使用?
查看>>
node.js url模块
查看>>