知识大全 C#实现测量程序运行时间及cpu使用时间
Posted 时间
篇首语:黄沙百战穿金甲,不破楼兰终不还。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 C#实现测量程序运行时间及cpu使用时间相关的知识,希望对你有一定的参考价值。
C#实现测量程序运行时间及cpu使用时间 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
对一个服务器程序想统计每秒可以处理多少数据包 要如何做?答案是用处理数据包的总数 除以累记处理数据包用的时间 这里要指出的是 运行一段程序 使用的cpu时间 跟实际运行的时间是不一样的 附例如下
private void ShowRunTime() TimeSpan ts = Process GetCurrentProcess() TotalProcessorTime; Stopwatch s = new Stopwatch(); s Start();
int Circles = ; for (int i = ; i < Circles; ++i) Console WriteLine(i ToString());
double Msecs = Process GetCurrentProcess() TotalProcessorTime Subtract(ts ) TotalMilliseconds; s Stop();
Console WriteLine(string Format( 循环次数: CPU时间(毫秒)= 实际时间(毫秒)= Circles Msecs s Elapsed TotalMilliseconds s ElapsedTicks)); Console WriteLine(string Format( tick = 毫秒 s Elapsed TotalMilliseconds / s Elapsed Ticks)); 程序输出如下
循环次数: CPU时间(毫秒)= 实际时间(毫秒)= tick = 毫秒
可以看出在这个例子中 两者差距比较大 其原因如下
)Windows是多任务操作系统 按照线程为单位对cpu时间轮询分配 即一个程序运行的中途 可能被剥夺cpu资源 供其他程序运行
)程序本身会有不占用cpu时间的等待过程 这个等待可能是我们程序主动的 比如启动一个进程 然后等待进程的结束 也可能是我们没有意识到的 如例子的Console WriteLine方法 猜想其内部进行了一系列的异步I/O操作然后等待操作的完成 这其间并没有占用调用进程的cpu时间 但耗费了很多等待时间
总结
)性能的测量 应该用程序运行时间来测量 当然也需要使用cpu时间作为参考 如果两者差距很大 需要考虑为何出现这种情况
cha138/Article/program/net/201311/13400相关参考
C#中让程序只运行一个实例的操作方法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 让程序只运行
C#WinForm判断程序是否以管理员身份运行 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! V
1)启停控制和运行状态显示; 2)冷冻水进出口温度、压力测量; 3)冷却水进出口温度、压力测量; 4)过载报警; 5)水流量测量; 6)运行时间和启动次数记录; 7)制冷系统启停控制程序的
1)启停控制和运行状态显示; 2)冷冻水进出口温度、压力测量; 3)冷却水进出口温度、压力测量; 4)过载报警; 5)水流量测量; 6)运行时间和启动次数记录; 7)制冷系统启停控制程序的
1)启停控制和运行状态显示; 2)冷冻水进出口温度、压力测量; 3)冷却水进出口温度、压力测量; 4)过载报警; 5)水流量测量; 6)运行时间和启动次数记录; 7)制冷系统启停控制程序的
1)启停控制和运行状态显示; 2)冷冻水进出口温度、压力测量; 3)冷却水进出口温度、压力测量; 4)过载报警; 5)水流量测量; 6)运行时间和启动次数记录; 7)制冷系统启停控制程序的
笔记本CPU散热器多长时间清理一次最好?如果现在送保修地点需要花多少钱?我的保修时间以过!谢谢 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整
用C#语言获取CPU利用率 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! usingSystem
用C#监控并显示CPU状态信息 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 简介 本文将介绍
//本来看似非常简单的程序是一个界面左边一个提示有个checkbox提示用户我知道了请不要再显示右边是运行QQ的一个按钮但是弄的时候弄了四个小时左右经常是调试的时候是对的但是有的时候点了按钮过后没