【问题标题】:List all processes and their current memory & CPU consumption?列出所有进程及其当前的内存和 CPU 消耗?
【发布时间】:2010-11-17 21:37:46
【问题描述】:

如何获取 C# 中所有进程的列表以及每个进程的当前内存和 CPU 消耗?

非常感谢示例代码。

【问题讨论】:

    标签: c# .net memory-management cpu-usage performancecounter


    【解决方案1】:

    Process class 有一个 GetProcesses 方法,可以让您枚举正在运行的进程并列出一系列统计信息,例如内存使用情况和 CPU 时间。查看属性下的文档以获取统计信息。

    内存使用是一个复杂的问题。真的没有一个数字来描述用法。请参阅 Russinovich 关于此事的优秀系列。第一部分在这里:http://blogs.technet.com/markrussinovich/archive/2008/07/21/3092070.aspx

    【讨论】:

    • 我知道这个类,但我不知道如何获取 CPU 消耗,或者 100 个内存相关字段中的哪一个实际上意味着真正的 RAM 消耗。
    • 内存使用有点复杂,但我猜你可能想看看 PrivateMemory。
    • 我想这取决于您所说的 RAM(内存)消耗是什么意思。 Windows 至少为进程使用的内存量存储两个值。正在使用的物理内存,以及分配给进程的虚拟内存的大小。两者都是消费......
    • 井过程监控器有点复杂。如果你想给用户一个简化的世界观,你需要弄清楚你想如何简化它。
    • @Alex 要了解为什么性能计数器“有延迟”的解释,请参阅我的this old answer,我在其中深入了解了 为什么.
    猜你喜欢
    • 2015-07-19
    • 1970-01-01
    • 2010-09-08
    • 2011-02-20
    • 2010-11-05
    相关资源
    最近更新 更多