是否有任何便携式(Windows和Linux)方式计算两次呼叫之间经过了多少毫秒?
基本上,我想实现与.NET的StopWatch类相同的功能. (对于那些已经使用过它的人)
在一个完美的世界里,我会使用boost :: date_time,但这不是一个选项,因为我强制要遵守一些愚蠢的规则.
对于那些更好地阅读代码的人来说,这就是我想要实现的目标.
Timer timer;
timer.start();
// Some instructions here
timer.stop();
// Print out the elapsed time
std::cout << "Elapsed time: " << timer.milliseconds() << "ms" << std::endl;
那么,如果有一个可以帮助我实现Timer类的可移植(一组)函数,它是什么?如果没有这样的功能,Windows&我应该使用Linux API来实现这个功能吗? (使用#ifdef类似WINDOWS的宏)
谢谢 !
解决方法:
在Linux上(通常在POSIX中),您可以使用gettimeofday函数,该函数返回自Epoch以来的微秒数.在Windows上,有GetTickCount函数,它返回自系统启动以来的毫秒数.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。