boost::deadline_timer

本文介绍了一个使用Boost.Asio实现的异步定时器组件,并详细解释了如何通过cancel机制使waithandler立即返回,以及如何在waithandler中检查错误代码来判断是否是由cancel操作触发的返回。
  1. 通过cancel可以使waithandler立刻返回。所以必须在waithandler中检查errorcode,如果errorcode为0,那么执行需要的定时操作,如果errorcode不等于0,那么检查其是否等于boost::asio::error::operation_aborted,如果等于,那么表示timer是被cancel。
  2. deadline_timer析构的开销很小。

  example:

  waithandler:

 

    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包
    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值