【问题标题】:How do I get the RAM and CPU using by my program? [duplicate]如何获取程序使用的 RAM 和 CPU? [复制]
【发布时间】:2014-08-30 12:42:01
【问题描述】:

我想在 C# 中使用我的程序获取 RAM(以 MB 为单位)和 CPU (%),但我不知道如何。

【问题讨论】:

标签: c# .net cpu ram


【解决方案1】:

对于 ram,你可以很容易地使用环境静态类的变量。

Environment.WorkingSet 就是一个这样的变量,我会让你查找 MSDN 以了解其他变量及其差异。

对于 cpu,它更复杂,因为程序的 cpu 使用率随时间变化很大,而 ram 仅在您期望的时候才会发生(程序由 Windows 调度/优先,可能在几毫秒内达到 100% cpu 使用率,0%接下来的几毫秒,如果你检查它,你会在寻找平均值时看到 0 到 100)。

您必须查询它(我假设使用 WMI)并每秒平均一次左右才能得到一些有趣的东西。

【讨论】:

    【解决方案2】:

    你可以尝试使用PerformanceCounter Class:-

    private PerformanceCounter theCPUCounter = 
       new PerformanceCounter("Process", "% Processor Time",              
       Process.GetCurrentProcess().ProcessName);
    

    您可能需要添加它才能使用上述内容:-

    using System.Diagnostics;
    

    还可以查看 How to get the CPU Usage in C#?Process Properties 以及此 MSDN 论坛以获取 CPU usage

    【讨论】:

    • 他问 CPU 和 RAM,你回答驱动器大小?
    • @RonanThibaudau:更新了!
    • 因此删除了我的反对票
    • @RonanThibaudau:- 谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多