发文章
发文工具
撰写
网文摘手
文档
视频
思维导图
随笔
相册
原创同步助手
其他工具
图片转文字
文件清理
AI助手
留言交流
PerformanceCounter:表示windows NT性能计数器组件
ComputerInfo:提供用于获取与计算机内存,已加载程序集,名称和操作系统有关信息的属性
DriveInfo:该类位于System.IO命名空间下,提供对有关驱动器信息的访问
介绍完几个必要的类,就开始实践吧:
1.初始化几个变量:
this.cpu = new PerformanceCounter("Processor", "% Processor Time", "_Total"); this.cinf = new ComputerInfo();
2.获取占用CPU的百分比
public double GetCpuPercent() { var percentage = this.cpu.NextValue(); return Math.Round(percentage, 2, MidpointRounding.AwayFromZero); }
3.获取占用内存的百分比
public double GetMemoryPercent() { var usedMem = this.cinf.TotalPhysicalMemory - this.cinf .AvailablePhysicalMemory ;//总内存减去可用内存 return Math.Round( (double)(usedMem / Convert.ToDecimal(this.cinf.TotalPhysicalMemory) * 100), 2, MidpointRounding.AwayFromZero); }
4.获取磁盘剩余空间及总空间
/// <summary> /// 根据盘符获取磁盘信息 /// </summary> /// <param name="diskName"></param> /// <returns>一个自定义类对象</returns> public HardDiskInfo GetHardDiskInfoByName(string diskName) { DriveInfo drive = new DriveInfo(diskName); return new HardDiskInfo { FreeSpace = GetDriveData(drive.AvailableFreeSpace),TotalSpace =GetDriveData (drive.TotalSize ),Name =drive .Name }; } /// <summary> /// 获取所有驱动盘信息 /// </summary> /// <returns></returns> public IEnumerable<HardDiskInfo> GetAllHardDiskInfo() { List<HardDiskInfo> list = new List<HardDiskInfo>(); foreach (DriveInfo d in DriveInfo.GetDrives()) { if (d.IsReady) { list.Add(new HardDiskInfo { Name = d.Name, FreeSpace = this.GetDriveData(d.AvailableFreeSpace), TotalSpace = this.GetDriveData(d.TotalSize) }); } } return list; } private string GetDriveData(long data)//将磁盘大小的单位由byte转化为G { return (data / Convert.ToDouble(1024) / Convert.ToDouble(1024) / Convert.ToDouble(1024)).ToString("0.00"); } class HardDiskInfo//自定义类 { public string Name { get; set; } public string FreeSpace { get; set; } public string TotalSpace { get;set;} }
运行结果:
Demo下载:
demo
来自: 昵称10504424 > 《工作》
0条评论
发表
请遵守用户 评论公约
Python对系统数据进行采集监控——psutil
#显示cpu所有逻辑信息print(psutil.cpu_times(percpu=True))# 查看cpu逻辑个数的信息print(u''''''''...
solaris系列之:使用vmstat,iostat以及df命令监视系统性能的方法
solaris系列之:使用vmstat,iostat以及df命令监视系统性能的方法显示虚拟内存统计信息(vmstat) 使用 vmstat 命令可以报告虚拟内存统计信息,以及有关系统事件(例如 CPU 负载、分页、上下文切换数、...
.NET Framework 类库 ()
NET Framework 类库 ()NET Framework 类库是一个由类、接口和值类型组成的库,通过该库中的内容可访问系统功能。它是生成 .NET Framework 应用程序、组件和控件的基础。类库中的命名空间和命名空间类别...
服务器监控指标有哪些?好文章一定要收藏
CPU相关监控项。以下为CPU使用率相关监控指标,可参考Linux的top命令来理解各项指标含义。inode使用率,UNIX/Linux系统内部使用inode号码来识别文件,磁盘还未存满,但inode已经分配完时会出现无法在磁...
性能测试小Tips
性能测试小Tips1、 性能测试的目的:通过测试确认软件是否满足产品的性能需求,同时发现系统中存在的性能瓶颈,起到优化系统的目的。7、 性能测试、压力测试、负载测试与容量测试:性能测试包括负载测...
这是一篇最通熟易懂的性能调优总结!
这是一篇最通熟易懂的性能调优总结!我们首先要做的就是对上线后的项目进行性能监控包括服务器性能监控和服务性能监控。CPU使用率、CPU...
10条命令,一分钟分析Linux性能问题
10条命令,一分钟分析Linux性能问题。它给出的只是一个较为高层的情况,往往需要借助其他工具进一步确认性能问题,有时候需要通过其他一...
服务器压测与监控工具
#物理机上测试,在服务器端和客户端安装程序wget https://github.com/HewlettPackard/netperf/archive/netperf-2.7.0.tar.gztar -xvf netperf-2.7.0.tar.gzcd netperf-netperf-2.7.0/./configure &...
超赞的mac系统监控小部件iStatistica Pro for Mac
超赞的mac系统监控小部件iStatistica Pro for Mac.iStatistica Pro版(含iStatistica Sensors mac温度监控模块)是ma上一款非常好用的菜单栏mac系统监控工具,包含:Mac 系统摘要,Mac电池信息,Mac网络...
微信扫码,在手机上查看选中内容