Boost.Asio——(2)同步定时器
1 源码及注释
//同步定时器
#include "stdafx.h"
#include <iostream>
#include <boost/asio.hpp> //只需要添加此头文件就可以使用asio
#include <boost/date_time/posix_time/posix_time.hpp>//因为要使用计时器,所以添加此头文件
int main()
{
boost::asio::io_service io; //使用asio至少需要一个io对象
boost::asio::deadline_timer t(io, boost::posix_time::seconds(5));//第一个参数是一个io,定时器以其为基准,第二个参数设置了定时器时间,需要注意的是,定时器从此时就开始计时了
std::cout << "wait......" << std::endl;
t.wait(); //调用wait()函数,程序将阻塞等待,如果此时已经超过了计时器的定时,就会立即返回继续执行下面的函数。否则就等待计时结束。
std::cout << "Hello, asio!" << std::endl;
getchar(); //使命令行停留
return 0;
}
2 执行结果
![](https://img.haomeiwen.com/i4909431/88e0a4cbd2314c00.png)
计时开始并等待.png
![](https://img.haomeiwen.com/i4909431/f6e85d0b0491a4a0.png)
计时结束.png
本文标题:Boost.Asio——(2)同步定时器
本文链接:https://www.haomeiwen.com/subject/brsivxtx.html
网友评论