我想在C#中使用我的程序获取RAM(以MB为单位)和CPU(%),但我不知道如何。
答案 0 :(得分:0)
您可以尝试使用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以及此CPU usage的MSDN论坛
答案 1 :(得分:0)
对于ram来说,你很容易使用环境静态类的变量。
一个这样的变量是Environment.WorkingSet,我可以让你查找MSDN以获取其他变量及其差异。
对于cpu而言,它更复杂,因为程序的cpu使用量随着时间的推移而变化很大,而ram只会在你预期的情况下运行(程序得到Windows的预定/优先级),可能会在几个时间内使用100%的cpu毫秒,0%接下来几毫秒,如果你检查了它,你会看到0到100,而你正在寻找平均值。
您必须查询它(使用我假设的WMI)并每隔一秒左右对其进行平均以获得有趣的内容。