Eli*_*Eli 5 c# performance module process
我的代码从每个正在运行的进程中提取加载模块的所有名称,我的方法就像这个答案。
这是我的代码:
Process[] procs = Process.GetProcesses();
foreach (Process p in procs)
{
foreach (ProcessModule item in p.Modules)
{
Console.WriteLine(item.FileName);
}
}
Run Code Online (Sandbox Code Playgroud)
由于某种原因,这种方法的性能非常低:(
是否有另一种方法或不同的方法来获取所有这些模块的名称?
任何其他运行速度比这更快的解决方案都很棒
TIA
您可以尝试添加一些并行化来加快速度:
Parallel.ForEach(Process.GetProcesses(),
process =>
{
foreach (ProcessModule m in process.Modules)
{
Console.WriteLine(m.FileName);
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1282 次 |
| 最近记录: |