【问题标题】:Finding memory usage of multiple App Pools using c#使用 c# 查找多个应用程序池的内存使用情况
【发布时间】:2017-06-03 02:13:37
【问题描述】:

我正在尝试通过 c# 查找每个 App Pool 的内存有多少被使用

这是我目前拥有的:

List<ApplicationPool> pools = new List<ApplicationPool>();
List<WorkerProcess> processes = new List<WorkerProcess>();

ServerManager serverManager = new ServerManager();
ApplicationPoolCollection appPools = serverManager.ApplicationPools;

foreach (ApplicationPool pool in appPools)
{
    pools.Add(pool);
}

这为我提供了我正在运行的所有应用程序池的列表,但 ApplicationPool 对象的所有属性都没有提供有关其使用情况或实时数据的任何信息。

我是不是完全搞错了?

如何找到我想要的信息?

我无法在任何地方找到一个直接的答案,但如果之前已经回答过这个问题,我们深表歉意。

干杯

【问题讨论】:

标签: c# iis application-pool iis-10


【解决方案1】:

您可以使用 system.diagnostics 来获取工作集。

可以修改链接中的示例以获得所有 w3wp.exe 进程的工作集。

Is there a way to retrieve a C# app's current memory usage?.

【讨论】:

  • 正是我需要的,我现在需要做的就是弄清楚每个 w3wp 进程之间的区别。干杯
  • 如果应用程序池使用 ApplicationIdentity,则进程的用户名应该是 ApplicationPool 名称
猜你喜欢
  • 2013-09-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-05-11
  • 1970-01-01
  • 2021-08-26
  • 2018-01-24
  • 1970-01-01
相关资源
最近更新 更多