cpu使用率最高的进程名称

2023-11-24

我有一个Samurize配置显示类似于任务管理器的 CPU 使用率图表。

如何同时显示当前CPU使用率最高的进程名称?

我希望最多每秒更新一次。 Samurize 可以调用命令行工具并将其输出显示在屏幕上,因此这也可以是一个选项。


进一步澄清:

我已经研究过编写自己的命令行 c# .NET 应用程序来枚举从 System.Diagnostics.Process.GetProcesses() 返回的数组,但 Process 实例类似乎不包含 CPU 百分比属性。

我可以用某种方式计算这个吗?


你想要得到的是即时CPU使用率(有点)......

实际上,进程的即时CPU 使用率并不存在。相反,您必须进行两次测量并计算平均 CPU 使用率,公式非常简单:

AvgCpuUsed = [TotalCPUTime(进程,时间2) - TotalCPUTime(进程,时间1)] / [时间2-时间1]

Time2 和 Time1 的差异越小,您的测量就越“即时”。 Windows 任务管理器以一秒的间隔计算 CPU 使用率。我发现这已经足够了,您甚至可以考虑以 5 秒为间隔进行测量,因为测量本身会占用 CPU 周期......

所以,首先,获取平均CPU时间

    using System.Diagnostics;

float GetAverageCPULoad(int procID, DateTme from, DateTime, to)
{
  // For the current process
  //Process proc = Process.GetCurrentProcess();
  // Or for any other process given its id
  Process proc = Process.GetProcessById(procID);
  System.TimeSpan lifeInterval = (to - from);
  // Get the CPU use
  float CPULoad = (proc.TotalProcessorTime.TotalMilliseconds / lifeInterval.TotalMilliseconds) * 100;
  // You need to take the number of present cores into account
  return CPULoad / System.Environment.ProcessorCount;
}

现在,对于“即时”CPU 负载,您需要一个专门的类:

 class ProcLoad
{
  // Last time you checked for a process
  public Dictionary<int, DateTime> lastCheckedDict = new Dictionary<int, DateTime>();

  public float GetCPULoad(int procID)
  {
    if (lastCheckedDict.ContainsKey(procID))
    {
      DateTime last = lastCheckedDict[procID];
      lastCheckedDict[procID] = DateTime.Now;
      return GetAverageCPULoad(procID, last, lastCheckedDict[procID]);
    }
    else
    {
      lastCheckedDict.Add(procID, DateTime.Now);
      return 0;
    }
  }
}

您应该从计时器(或您喜欢的任何间隔方法)调用该类您想要监控的每个进程,如果您想要所有进程,只需使用进程.GetProcesses静态方法

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

cpu使用率最高的进程名称 的相关文章

  • 将 CrashDumps 转储到应用程序运行所在的同一文件夹中

    我编写了一个应用程序 我希望对其进行一定程度的自动调试 我想使用 Windows 错误报告将故障转储输出到应用程序运行所在的同一文件夹中 我的想法是 我可以让我的应用程序在它自己的文件夹中查找任何 dmp 文件 然后根据需要上传它们进行分析
  • 如何加速Python中的N维区间树?

    考虑以下问题 给定一组n间隔和一组m浮点数 对于每个浮点数 确定包含该浮点数的区间子集 这个问题已经通过构建一个解决区间树 https en wikipedia org wiki Interval tree 或称为范围树或线段树 已经针对一
  • 在哪里可以找到 Windows 7 UX 指南中推荐的图标/动画?

    Windows 7 UX 指南有很好的插图和图标示例 但我在 SDK 中确实找不到它们 他们藏在某个地方 还是找不到 如果您谈论的是常见的 UI 图标 那么您应该以编程方式获取它们 例如 您可以使用 var errIcon HICON be
  • 就分页分段内存而言的程序寿命

    我对 x86 Linux 机器中的分段和分页过程有一个令人困惑的概念 如果有人能澄清从开始到结束所涉及的所有步骤 我们将很高兴 x86 使用分页分段内存技术进行内存管理 任何人都可以解释一下从可执行的 elf 格式文件从硬盘加载到主内存到它
  • Windows 操作系统中 ST_INO(os.stat() 输出)的含义

    谁能告诉我这个值的含义是什么st ino是跑步时os stat 在 Windows 上 Python 3 5 3 在早期的 Python 版本中 它包含虚拟值 但最近发生了变化 我找不到它是如何计算 生成的 我怀疑它因文件系统 NTFS F
  • Tensorflow 导入错误:没有名为“tensorflow”的模块

    我在 Windows Python 3 5 Anaconda 环境中安装了 TensorFlow 验证成功 有警告 tensorflow C gt python Python 3 5 3 英特尔公司 默认 2017 年 4 月 27 日 1
  • 关闭有效句柄时,AppVerifier 报告“无效句柄 - 代码 c0000008”

    我有一个简单的测试程序 在运行时会失败并出现异常AppVerifier 程序重复STD INPUT HANDLE然后尝试使用关闭它CloseHandle 该程序运行良好 无需AppVerifier返回TRUE for CloseHandle
  • 优化我的表现

    我正在开发一个使用 Zend Framework 1 11 Doctrine 2 一些 Symfony 2 组件以及其他工具和库的项目 我正在尝试使用 Xdebug 和 Webgrind 优化性能 我已经发现了一些瓶颈 例如解析 Ini 配
  • 如何解决“布局有超过 80 个视图,对性能不利”?

    我正在做一个有点复杂的布局 只是我无法修复 LINT 指示的错误 黑莓浏览次数超过 80 对性能不利 这是布局
  • 高效秒表

    您好 我正在用 javascript 编写一个秒表实用程序 我有一个关于效率和开销的问题 我考虑过两种制作秒表的方法 1 存储开始日期并不断测量自该日期以来经过的毫秒数 2 创建一个整数并按设定的时间间隔递增其值 我想知道哪个最有效 另外
  • 获取自动热键中的可用屏幕区域

    我正在尝试编写一些简单的 AutoHotkey 脚本来移动窗口 但在获取正确的屏幕尺寸值时遇到问题 我试图获取屏幕上可用区域的大小 通常是全屏分辨率减去任务栏 也许还有任何其他停靠窗口 如 Vista 中的侧边栏 我发现的获取屏幕宽度的方法
  • 将 kinit 与 keytab 文件一起使用时会发生什么

    希望对kinit和keytab文件的使用有更多的了解 例如 如果我已经为某个服务生成了一个密钥表文件 该服务通过以下方式注册到活动目录 ktpass mapuser to someuseraccount ktab k mykeytab a
  • SetWindowsHookEx 函数返回 NULL

    我正在研究 DLL 注入 但收到错误如下 挂接进程失败 87 参数不正确 目标进程和dll都是64位的 注入代码为 BOOL HookInjection TCHAR target TCHAR dll name https msdn micr
  • 将 OpenBLAS 链接到 MinGW

    我正在尝试链接OpenBLAS https www openblas net 图书馆与明GW w64 https mingw w64 org Windows 上的编译器 这是我的代码 include
  • 为什么 Windows 命令 DIR 在搜索 *.tif 文件时也会输出 *.tiff 文件?

    我想使用 Windows 命令DIR为了找到唯一TIF文件 即具有扩展名的文件 tif 因此我使用以下小批处理文件 for f delims a IN dir b a d s C wolter testversion input tif d
  • 在 Vista 上调用 RPC 时出现“不支持操作”

    我的应用程序使用 Microsoft RPC 进行进程间通信 当两个进程在同一台机器上运行并且一个进程尝试调用声明为 IDL 表示法 的方法时 error status t rpcMethod in pipe byte parameter
  • 如何在 JMeter 中显示实际循环计数

    我们可以通过以下方式显示实际线程 threadNum 实际循环计数有类似的东西吗 您可以使用 jm Thread Group idx 获取当前循环迭代 jm Thread Group idx 请注意 这是 JMeter 5 中一般增强功能的
  • 为什么同一个curl命令在windows和linux下输出不同的东西?

    为什么同样的curl o file https www link com 命令输出不同的东西 例如 如果我运行命令curl o source txt https www youtube com playlist list PLIx6Fwnp
  • 是否可以使用“git gc”来打包引用日志对象?

    正如答案所暗示的https stackoverflow com a 32025729 https stackoverflow com a 32025729我已经配置了远程裸仓库 git config gc pruneExpire never
  • SignalR 似乎正在减慢我的 MVC/Azure 应用程序的启动速度

    我有一个 MVC 应用程序在 Windows Azure 上的 WebRole 上的 NET 4 5 下运行 使用 SignalR 1 0 alpha2 并使用 ServiceBus 底板 在我的 App Start 文件夹中 我有 Reg

随机推荐

  • ID、唯一 ID、客户端 ID、唯一客户端 ID、静态客户端 ID?

    好吧 我对动态创建的控件的 ID 很困惑 Public Class TestClass Inherits Panel Implements INamingContainer Function TestClassInit Handles Me
  • Java 将接口转换为类

    我有一个关于接口和类实现接口的问题 这是我的代码 interface iMyInterface public iMethod1 public class cMyClass implements iMyInterface public iMe
  • 如果 APNS 设备令牌过期会发生什么?

    根据这个论坛帖子APNS 设备令牌创建后是否会更改 设备令牌可能已过期 或者 APNS 可能会更改设备令牌 我的问题是 如果服务器将这个过期的令牌发送给Apple APNS是否会使用过期的令牌进行通知 APNS 可以将此过期令牌用于其他设备
  • 为什么 (![]+[])[+!![]+[]] 产生“a”

    我有兴趣了解其内部结构JavaScript 我尝试阅读源代码蜘蛛猴 and Rhino但这是相当复杂的 我问的原因是 为什么会发生类似的事情 生产 a 生产alert 1 Source http sla ckers org forum re
  • C# 中抽象类的构造函数

    为什么可以在 C 中为抽象类编写构造函数 据我所知 我们无法实例化抽象类 那么它的用途是什么 你不能实例化这个类 对吗 因为您可能想要在抽象类中实例化数据的标准方法 这样 您就可以让从该类继承的类调用基本构造函数 public abstra
  • jquery - 对除单击的元素之外的每个元素运行函数

    作为一些示例代码 我可能有这样的东西 a parent click function a parent each function this stop true false animate width 140px 200 function
  • 内联变量如何工作?

    在 2016 年奥卢 ISO C 标准会议上 一项名为内联变量被标准委员会投票纳入C 17 通俗地说 什么是内联变量 它们如何工作以及它们有什么用 内联变量应该如何声明 定义和使用 提案第一句话 The inline说明符可以应用于变量以及
  • 在 docker 的构建阶段使用 github 私有仓库部署密钥进行 npm 安装

    我的用例是 我有多个使用相同中间件的 Express 微服务 我想为每个中间件以 npm 模块的格式创建不同的存储库 每个存储库都是私有存储库 并且可以附加部署密钥 可以是不同的密钥或相同的密钥 所有这些在本地都可以正常工作 但是 当我尝试
  • Typo3 V6:如何创建内容元素容器? (不带电视)

    对于一个项目 我使用 Typo3 v6 0 我正在寻找创建嵌套内容元素或内容元素容器 我希望能够创建内联两列布局 而不需要使用特定的模板 我想做这个without使用Templavoila 我尝试过的扩展是gridelements kb n
  • 如何在 Win32 桌面应用程序中使用自定义 WinRT 库?

    我的基于 Win32 的桌面应用程序中有一个 WinRT 类 C CX 引用类 它访问 WinRT API 并且工作得很好 我用了本指南让它发挥作用 现在我试图将此类放入桌面应用程序可以使用的库中 我在这方面遇到了一些麻烦 这是我在 Vis
  • 如何使用 ctypes.util.find_library 在 AWS lambda (python) 中导入 .so 库?

    我正在尝试什么 我在 Lambda 上使用的 python 包 OCRMYPDF 需要 leptonica 库libpt so 5 在隔离导入代码时 我发现问题在于find library lept 打印结果返回 None from cty
  • 将13位unixtime(以ms为单位)转换为python中的时间戳

    我想将以毫秒为单位的 13 位 Unix 时间转换为时间戳 1523126888080 gt gt Y m d H M S 我已经尝试过以下代码link 但我认为这是 10 位 Unix 时间 而我有 13 位 Unix 时间 所以 这段代
  • R:按值排除子集的 Data.table

    Using data table in R 我正在尝试对子集进行操作排除选定的元素 我正在使用by运算符 但我不知道这是否是正确的方法 这是一个例子 例如 的价值Delta in IAH SNA是 3 3 2 的平均值Stops in IA
  • 从 IntPtr(16 位)数组复制到托管 ushort

    我有一个IntPtr称为rawbits 它指向一个10MB的数据数组 16位值 我需要返回一个托管的ushort数组由此而来 下面的代码可以工作 但有一个额外的BlockCopy我想摆脱 Marshal Copy不支持ushort 我能做些
  • 使用矩阵中的行索引和列索引从矩阵中提取值

    我有一个矩阵 A 看起来像 A matrix 1 9 3 3 A 1 2 3 1 1 4 7 2 2 5 8 3 3 6 9 以及我感兴趣的元素索引矩阵 第 1 列包含行索引 第 2 列包含列索引 v matrix c 1 3 2 2 2
  • 如何在java程序中使用mkdir和rmdir命令

    我想使用系统命令 例如mkdir and rmdir运行java程序时 我怎样才能做到这一点 为什么要使用命令行 仅供参考 有内置的独立于平台的File类 http www exampledepot com egs java io dele
  • 以固定速率安排 Callable

    我有一个任务想要以固定速率运行 但是我还需要每次执行后任务的结果 这是我尝试过的 The task class ScheduledWork implements Callable
  • RoutedCommands 已执行和预览执行事件

    我的问题是我想在多个地方处理命令 例如 我有自定义用户控件 其中按钮绑定到某个命令 我在该控件中有一个命令绑定 但在使用该控件的窗口中也有一个命令绑定 我的目标是在控件内执行某些操作 同时不中断窗口中命令的处理 我尝试尝试执行和预览执行事件
  • 将列表元素向右移动并将列表元素从末尾移动到开头

    我想旋转列表中的元素 例如 将列表元素向右移动 a b c d 会成为 d a b c or 1 2 3 变成 3 1 2 我尝试了以下方法 但它不起作用 def shift aList n len aList for i in range
  • cpu使用率最高的进程名称

    我有一个Samurize配置显示类似于任务管理器的 CPU 使用率图表 如何同时显示当前CPU使用率最高的进程名称 我希望最多每秒更新一次 Samurize 可以调用命令行工具并将其输出显示在屏幕上 因此这也可以是一个选项 进一步澄清 我已