【发布时间】:2019-01-14 09:26:00
【问题描述】:
在 .NET Core 中,如何获取给定进程的 CPU 使用率和虚拟内存?
Google 搜索结果显示 PerformanceCounter 和 DriverInfo 类可以完成这项工作。但是,PerformanceCounter 和 DriverInfo 类在 .NET Core 中不可用。
stackoverflow 中有一篇关于这个问题的帖子:How to get the current CPU/RAM/Disk usage in a C# web application using .NET CORE?
但它只针对: -当前进程的CPU使用率:
var proc = Process.GetCurrentProcess();
我已获得进程(使用 ProcessID 整数格式)。如何在 .NET Core 中获取该特定进程的 CPU 使用率和虚拟内存?
【问题讨论】:
-
听起来 .Net Core 目前是满足您要求的错误选择。为什么不直接使用 .Net 框架?
-
我上面写的代码是针对.Net core的。不是 .Net 框架
-
我知道...我的意思是,您为什么使用 .Net Core?您在 .Net Framework 上使用它是否有特定原因?
-
@JamieRees,上述功能需要在 .Net Core 中运行,因为该项目需要在 Windows、Linux、macOS 和 Docker 的 Web 应用程序和服务中运行。
-
这仍然可以在.Net Framework中使用Mono完成