我想找到一种遍历所有活动进程并对它们进行诊断检查(内存使用,CPU时间等)的方法,类似于任务管理器。
该问题分为两部分:
我什至不确定要在哪个命名空间中查找它。任何帮助/提示/链接都将不胜感激。
查找所有过程
您可以通过Process类来完成此操作
using System.Diagnostics; ... var allProcesses = Process.GetProcesses();
运行诊断
您能在这里给我们更多信息吗?目前尚不清楚您想做什么。
尽管Process类可以提供一些信息,但可能会对您有所帮助。可以查询此类
编辑
OP提到他们想获取内存和CPU信息。这些属性在Process类上很容易获得(由GetProcesses()返回)。下面是MSDN页面,其中列出了所有受支持的属性。有各种可用的内存和CPU可以满足您的需求。
http://msdn.microsoft.com/zh- CN/library/system.diagnostics.process.aspx
码:
将此行添加到您的使用列表:
using System.Diagnostics;
现在,您可以使用Process.GetProcesses()方法获取进程列表,如以下示例所示:
Process[] processlist = Process.GetProcesses(); foreach (Process theprocess in processlist) { Console.WriteLine("Process: {0} ID: {1}", theprocess.ProcessName, theprocess.Id); }