【发布时间】:2012-12-19 08:18:10
【问题描述】:
我正在开发一个从 ftp 下载文件的程序,并且正在寻找一个高分辨率计时器库来计算下载速度,目前我使用的是 c++ time(NULL),但结果不准确。
是否有一个简单/易于使用、即插即用的 Windows 平台 c++ 库?自上次通话后以秒为单位的时间或类似的东西。
编辑:
所以 QueryPerformanceCounter() 被多次提及,但是通过其他线程我发现了:
您应该被警告它是基于 CPU 频率的。这个频率不稳定,例如启用了省电模式。如果要使用此 API,请确保 CPU 处于恒定频率。
但请注意,英特尔的 SpeedStep 技术可能会在您的代码没有注意到的情况下改变 PerformanceFrequency
*我们还尝试为我们的线程修复线程亲和性,以确保每个线程始终从 QueryPerformanceCounter 获得一致的值,这很有效,但它绝对会影响应用程序的性能。 *
所以考虑到这种情况是否建议使用它?程序的性能和定时器的可靠性很重要
【问题讨论】:
-
正在展示... C++11 的...
std::chrono!
标签: c++