boost timer类介绍收藏

news/2023/12/9 17:42:03
   boost timer类介绍收藏

新一篇: boost lambda简介 | 旧一篇: boost库xml序列化

<script>function StorePage(){d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():'');void(keyit=window.open('http://www.365key.com/storeit.aspx?t='+escape(d.title)+'&u='+escape(d.location.href)+'&c='+escape(t),'keyit','scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes'));keyit.focus();}</script>1, 简介

  很多时候我们写程序都要计算一下时间. 其实就是在一个操作两端记录一下时
  间, 然后减一下. 如果我们懒到这个动作都想省掉, 那就用boost::timer吧.

2, 使用

  有三个可以用的类

类progress_timer在离开定义自己的scope之后就会自动销毁, 并且显示经过的时间.

#include <boost/progress.hpp>
#include <boost/timer.hpp>
#include <windows.h>
#include <iostream>

int main()
{
        {
                boost::progress_timer t;  // start timing
                boost::timer tx;
                Sleep(1000);
                std::cout << tx.elapsed() << std::endl;
        }
        std::cout << "Next round" << std::endl;
        {
                boost::progress_timer j;  // start timing
                Sleep(1000);
        }
    return 0;
}

类progress_display显示一个进度条, 好好玩哦.

#include <boost/progress.hpp>
#include <windows.h>
#include <iostream>

int main()
{
        boost::progress_display pd(13);
        for (int i = 0; i< 13; i++) {
                Sleep(100);
                ++pd;
        }
    return 0;
}

类timer, 显得比以上两个稍微正式一点. 例子就嵌在上面的程序里面了.
当然你可以在需要的时候用timer.reset重置计时器.


 

发表于 @ 2006年09月23日 02:23:00|评论(0<script type="text/javascript">AddFeedbackCountStack("1267819")</script>)|编辑

新一篇: boost lambda简介 | 旧一篇: boost库xml序列化


http://www.niftyadmin.cn/n/4820006.html

相关文章

关于网络编程(服务端)的一些笔记

针对服务器处理网络连接的几种方式&#xff0c;unix网络编程里给出了&#xff19;种方案&#xff0c;并且对服务器进程&#xff0f;线程的开销做了一个量化的比较。从个人经验出发&#xff0c;觉得以下几种方式是比较实用的&#xff1a; 1.最简单的是堵塞Accept&#xff0c;收…

Linux网络编程--服务器模型

学习过《软件工程》吧.软件工程可是每一个程序 员"必修"的课程啊.如果你没有学习过, 建议你去看一看. 在这一章里面,我们一起来从软件工程的角度学习网络编程的思想.在我们写程序之前, 我们都 应该从软件工程的角度规划好我们的软件,这样我们开发软件的效率才会高. 在…

高级I/O多路转接之select poll epoll 区别

select、poll、epoll之总结[整理] 概述 Linux上可以使用不同的I/O模型&#xff0c;我们可以通过下图了解常用的I/O模型&#xff1a;同步和异步模型&#xff0c;以及阻塞和非阻塞模型&#xff0c;本文主要分析其中的异步阻塞模型。 select&#xff0c;poll&#xff0c;epo…

客户端、服务器端编程

首先是从main函数开发&#xff1a; int main(itn argc,char* argv[]) { pthread_t thread; int count; int status; client_threads CLIENT_THREADS; for(count 0;count <client_threads,count) { status pthread_create(&thread,NULL,client_routine,(void*…

写的非常不错的一个windows下socket编程

本文简单介绍了当前Windows支持的各种Socket I/O模型&#xff0c;如果你发现其中存在什么错误请务必赐教。一&#xff1a;select模型二&#xff1a;WSAAsyncSelect模型三&#xff1a;WSAEventSelect模型四&#xff1a;Overlapped I/O 事件通知模型五&#xff1a;Overlapped I/O…

vim便捷命令:高亮搜索 多行注释 和 取消多行注释

Vim 的高亮搜索 1. 使用 * 键可以向后搜索光标所在位置的单词。反之&#xff0c;使用 # 键可以向前搜索光标所在位置的单词。第一次使用 * 或者 # 进行搜索之后&#xff0c;则可以使用 N 或 Shift-N 继续进行搜索。另外&#xff0c;如果设置了hlsearch选项&#xff08;:set hls…

谈谈C++继承中的重载,覆盖和隐藏

谈谈C继承中的重载&#xff0c;覆盖和隐藏重载只能在同一个域中&#xff01;继承后就不是同一个域了&#xff0c;只存在覆盖和隐藏的情况&#xff0c;如果不满足那两个条件&#xff08;1是父类包含virtual关键字&#xff0c;2是函数名、返回值、参数类型一致&#xff09;&#…

shell中命令代换$()与`` 、 变量代换${} 、 整数运算$(( )) 的区别

命令代换$()与 、 变量代换${} 、 整数运算$(( )) 1、$( ) 与 (反引号)在 bash shell 中&#xff0c;$( ) 与 (反引号) 都是用来做命令替换用(command substitution)的。 所谓的命令替换与我们第五章学过的变量替换差不多&#xff0c;都是用来重组命令行&#xff1a; * 完…

1.8 什么是linux

文章目录 什么是LinuxUNIX的历史与发展Linux的诞生Linux的特点与优势Linux发行版结论 什么是Linux Linux是一种开源的操作系统内核&#xff0c;它是基于UNIX操作系统的设计理念和原则而开发的。Linux内核由Linus Torvalds于1991年首次发布&#xff0c;从那时起&#xff0c;它成…

魅族魅蓝5s详细开启Usb调试模式的流程

当我们使用安卓手机通过数据线链接到Pc的时候&#xff0c;或者使用的有些软件比如我们团队营销团队当使用的软件引号精灵&#xff0c;之前使用的老版本就需要开启USB开发者调试模式下使用&#xff0c;现当新版本不需要了&#xff0c;如果手机没有开启USB开发者调试模式&#xf…

两种语言实现设计模式(C++和Java)(八:建造者模式)

参考&#xff1a;http://c.biancheng.net/view/1354.html 建造者&#xff08;Builder&#xff09;模式的定义&#xff1a;指将一个复杂对象的构造与它的表示分离&#xff0c;使同样的构建过程可以创建不同的表示&#xff0c;这样的设计模式被称为建造者模式。它是将一个复杂的对…

shell定时器-crontab

Linux的crontab crontab定时器&#xff08;包括执行shell&#xff09; 如果要让unix系统重复&#xff0c;定期做一件事&#xff0c;我们就会用到crontab&#xff0e; 实质上真正去执行每一个重复任务的是cron&#xff0c;cron是的unix家族的一个后台常驻程序&#xff0c;cron是…

ncurses及简单使用

1、NCURSES&#xff1a;提供字符终端处理库&#xff0c;包括面板和菜单 NCURSES不仅仅只是封装了底层的终端功能&#xff0c;而且提供了一个相当稳固的工作框架&#xff08;Framework&#xff09;用 以产生漂亮的界面。它包含了一些创建窗口的函数。而它的姊妹库 Menu、Panel和…

tcpdump strace archlinux gento 字符串截取

1、TCPDUMP &#xff08;1&#xff09;简介&#xff1a; TcpDump可以将网络中传送的数据包完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤&#xff0c;并提供and、or、not等逻辑语句来帮助你去掉无用的信息。 Linux作为网络服务器&#xff0c;特别…

Linux程式设计(转载)一

Linux程式设计--前言、目录 --------------------------------------------------------------------------------来自&#xff1a;http://www.openchess.org/noitatsko/programming/ 在这里的内容大都是属於入门类的&#xff0c;有点包山包海的&#xff0c;颇为散乱&#xff…

windows7下git、TortoiseGit的安装与使用

1、目的&#xff1a;安装Tortoise 2、准备&#xff1a;首先安装git&#xff0c;再安装Tortoise&#xff1b; 3、git的安装与准备&#xff1a; &#xff08;1&#xff09;git下载&#xff1a;在Windows中使用Git需要安装msysGit&#xff1a;下载地址&#xff1a;http://msysg…
最新文章