使用perfmon监控系统性能
2011-11-09 18:23
232 查看
《编程之美》里边有个讲控制CPU占用率曲线的例题,里面讲到使用perfmon工具来帮助我们实现控制CPU占用率曲线的功能。
perfmon工具可以监控系统的各个系能参数,在.NET Framework中也提供了操作perfmon的相应类。我们只要根据需要取得实例句柄进行操作就行。(注意,因为perfmon是一个程序实例,我们不能直接用new来实例化一个对象。)
关于perfmon的知识,在MSDN上有很多讲解和实例。下面是一个根据用户输入控制CPU占用率曲线的程序。
#include <iostream>
#include <windows.h>
#using <System.dll>
using namespace std;
using namespace System::Diagnostics;
void MakeUsage(float level)
{
PerformanceCounter^ temp = gcnew PerformanceCounter("Processor", "% Processor Time", "_Total"); // 注意,不能用new,因为这是一个引用类型。再者,这是个计数器。
while(true)
{
if(temp->NextValue() > level)
{
Sleep(10);
}
}
}
int main()
{
float level(0);
cin >> level;
MakeUsage(level);
return 0;
}
编译运行程序,输入cpu占用率水平,运行perfmon可查看到。
如输入:50
备注:
编译程序前,要添加公共语言运行库属性,不然会出现“fatal error C1190: 托管目标代码需要“/clr”选项”的错误。
perfmon工具可以监控系统的各个系能参数,在.NET Framework中也提供了操作perfmon的相应类。我们只要根据需要取得实例句柄进行操作就行。(注意,因为perfmon是一个程序实例,我们不能直接用new来实例化一个对象。)
关于perfmon的知识,在MSDN上有很多讲解和实例。下面是一个根据用户输入控制CPU占用率曲线的程序。
#include <iostream>
#include <windows.h>
#using <System.dll>
using namespace std;
using namespace System::Diagnostics;
void MakeUsage(float level)
{
PerformanceCounter^ temp = gcnew PerformanceCounter("Processor", "% Processor Time", "_Total"); // 注意,不能用new,因为这是一个引用类型。再者,这是个计数器。
while(true)
{
if(temp->NextValue() > level)
{
Sleep(10);
}
}
}
int main()
{
float level(0);
cin >> level;
MakeUsage(level);
return 0;
}
编译运行程序,输入cpu占用率水平,运行perfmon可查看到。
如输入:50
备注:
编译程序前,要添加公共语言运行库属性,不然会出现“fatal error C1190: 托管目标代码需要“/clr”选项”的错误。
相关文章推荐
- 使用性能监控工具-Perfmon监控windows服务器性能
- Linux下使用NMON监控、分析系统性能
- 【性能监控】 -使用LR监控Linux系统服务器
- 使用linux系统性能监控工具KSysguard监控远端主机介绍
- 系统性能监控系列1:使用JAVA动态代理实现非侵入式的性能测量方法
- 使用Windows 系统性能监控来报警磁盘空间不足
- linux使用nmon监控、分析系统性能
- Linux下使用NMON监控、分析系统性能
- 使用Sigar监控系统性能
- Linux下使用NMON监控、分析系统性能
- centos6.5下使用NMON监控、分析系统性能!!!
- 全能冠军:Linux系统性能和使用活动监控工具 sysstat
- (转)使用 Nmon 监控 Linux 的系统性能
- Linux下安装使用NMON监控、分析系统性能
- Linux系统性能和使用活动监控工具 sysstat
- linux使用nmon监控、分析系统性能
- Linux下使用NMON监控、分析系统性能
- Linux下安装使用NMON监控、分析系统性能
- linux 下查看系统资源和负载,以及性能监控(学习使用)
- Linux下使用NMON监控、分析系统性能