首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >监控特定进程的网络性能

监控特定进程的网络性能
EN

Stack Overflow用户
提问于 2013-04-25 02:57:23
回答 1查看 2.5K关注 0票数 8

我正在编写一个程序,它使用.NET性能计数器来获取特定进程的CPU、内存和网络使用情况。

例如,为了获得Explorer的CPU和内存数据,我创建了如下性能计数器:

代码语言:javascript
复制
PerformanceCounter PC = new PerformanceCounter();
PC.CategoryName = "Process";
PC.CounterName = "% Processor Time";
PC.InstanceName = "Explorer";

PerformanceCounter PC = new PerformanceCounter();
PC.CategoryName = "Process";
PC.CounterName = "Working Set - Private";
PC.InstanceName = "Explorer";

不幸的是,进程categoryName没有允许我获取该进程的网络使用情况的属性。我可以使用网络接口categoryName来获取任何特定NIC上的总体网络使用情况,但不能将其隔离到任何给定的进程。

EN

回答 1

Stack Overflow用户

发布于 2013-04-25 20:18:53

我想您只能获得整个系统的网络使用情况。您可以使用以下代码:

代码语言:javascript
复制
GetCounterValue(_netRecvCounters[index], "Network Interface", "Bytes Received/sec",      _instanceNames[index]):

double GetCounterValue(PerformanceCounter pc, string categoryName, string counterName, string instanceName)
{
    pc.CategoryName = categoryName;
    pc.CounterName = counterName;
    pc.InstanceName = instanceName;
    return pc.NextValue();  
}

使用PerformanceCounters,您只能获取微软希望您有权访问的值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16200034

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档