博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Boost学习笔记——cpu_timer
阅读量:5036 次
发布时间:2019-06-12

本文共 1175 字,大约阅读时间需要 3 分钟。

原始版本的timer已经废弃,最新的版本建议使用cpu_timer。

一、简介:

这个类一般用来记录程序运行了多长时间。它被分解为经过时间,操作系统响应用户请求的时间和用户时间。

cpu_timer计量经过时间,用户执行时间,和系统执行时间。auto_cpu_timer是一个更为精细的cpu_timer,当它被销毁时能自动的报告花费的时间。

 

二、使用cpu_timer

例一:

1 #include 
2 #include
3 4 int main() 5 { 6 boost::timer::auto_cpu_timer t; 7 8 for (long i = 0; i < 100000000; ++i) 9 std::sqrt(123.456L); // burn some time10 11 return 0;12 }

当auto_cpu_timer构造的时候,计时开始,当它析构的时候,则自动的在默认的输出流std::cout中输出花费的时间,并停止计时。

输出格式如下:

 5.713010s wall, 5.709637s user + 0.000000s system = 5.709637s CPU (99.9%)

可以在构造cpu_timer的时候改变输出格式。下图为一些常用的输出形式:

 

例二:

1 #include 
2 #include
3 #include
4 #include
5 #include
6 7 int _tmain(int argc, _TCHAR* argv[]) 8 { 9 std::stringstream ss;10 std::string str;11 {12 boost::timer::auto_cpu_timer t(ss,2);13 for (long i = 0; i < 100000000; ++i)14 std::sqrt(123.456L); // burn some time15 16 }17 ss >> str;18 std::cout << str << std::endl;19 20 return 0;21 }

 

 

 

 

转载于:https://www.cnblogs.com/nangning/p/3327901.html

你可能感兴趣的文章
html5实现移动端下拉刷新(原理和代码)
查看>>
iPhone开发中从一个视图跳到另一个视图有三种方法:
查看>>
pytho logging
查看>>
一个Java程序员应该掌握的10项技能
查看>>
c#英文大小写快捷键
查看>>
tpframe免费开源框架又一重大更新
查看>>
一.go语言 struct json相互转换
查看>>
什么是架构设计
查看>>
程序员学习能力提升三要素
查看>>
PHP 微信错误状态返回码说明
查看>>
【4.1】Python中的序列分类
查看>>
ubuntu 移动文件
查看>>
Easy Mock
查看>>
看看 Delphi XE2 为 VCL 提供的 14 种样式
查看>>
Python内置函数(29)——help
查看>>
机器学习系列-tensorflow-01-急切执行API
查看>>
SqlServer 遍历修改字段长度
查看>>
Eclipse快捷键:同时显示两个一模一样的代码窗口
查看>>
《架构之美》阅读笔记05
查看>>
《大道至简》读后感——论沟通的重要性
查看>>