是否可以从C#读取内部CPU滴答计数器?

是否可以从C#读取内部CPU滴答计数器?,第1张

概述我有一个多线程的C#程序,我需要记录每个线程在特定的旋转等待锁中花费多少滴答. 我知道有从C或汇编程序中执行此 *** 作的方法,但可以通过某种方式直接从C#访问同一个计数器,也就是说,无需通过Stopwatch类(我假设调用Start / Stop就有一些开销,我不确定它有多精确)? 在使用System.Diagnostics.Stopwatch“排除”之前:您的测试系统是否支持高分辨率秒表? :见 M 我有一个多线程的C#程序,我需要记录每个线程在特定的旋转等待锁中花费多少滴答.

我知道有从C或汇编程序中执行此 *** 作的方法,但可以通过某种方式直接从C#访问同一个计数器,也就是说,无需通过Stopwatch类(我假设调用Start / Stop就有一些开销,我不确定它有多精确)?

解决方法 在使用System.Diagnostics.Stopwatch“排除”之前:您的测试系统是否支持高分辨率秒表? :见 MSDN on ‘StopWatch : check-out : ‘Frequency and ‘IsHighResolution.

从StopWatch获得“最佳”的优秀SO线程:SO thread don’t miss comments by Eric Lippert

.net时间测量中的精度与准确度:SO thread : Precision vs. accuracy in .NET time measurement可能会有所帮助.

C#到Win32 API中API调用的“成本”:queryPerformanceFrequency和queryPerformanceCounter:与StopWatch相比?

CodeProject上的一个来自C#的API示例:2006 code,author in a comment says he did not consider thread safety

SO上的其他线程处理了诸如补偿托管代码的一次性JIT命中(“干运行”热身技术),强制垃圾收集和终结器等问题.易于查找.

总结

以上是内存溢出为你收集整理的是否可以从C#读取内部CPU滴答计数器?全部内容,希望文章能够帮你解决是否可以从C#读取内部CPU滴答计数器?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1224340.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存