定時器basic_deadline_timer/basic_waitable_timer

  • 定時器可以做什么用
    用于在確定的時間點(diǎn)或者經(jīng)過確定的時間執(zhí)行某種操作

  • deadline_timerwaitable_timer有什么區(qū)別
    在使用上沒有區(qū)別,不同之處在于默認(rèn)的deadline_timer使用的boost::posix_time::ptime作為時鐘,而waitbale_timer默認(rèn)提供了三種標(biāo)準(zhǔn)時鐘:steady_clocksystem_clock、high_resolution_clock。

  • 如何構(gòu)造定時器

    1. IO服務(wù)
    2. IO服務(wù)+時間點(diǎn)
    3. IO服務(wù)+時間段
      一旦指定了時間點(diǎn)/時間段,定時器會直接以同步方式被啟用
  • 如何設(shè)置時間點(diǎn)/時間段
    expires_at用來指定等待的時間點(diǎn),expires_from_now用來指定等待的時間段,設(shè)置完成后,任何異步等待將會被取消,如果定時器在此時已經(jīng)到時,異步操作將不能被取消,但是會返回錯誤碼表示該情況;該接口會返回被取消的異步操作個數(shù)。

  • 如何獲取指定的等待時間點(diǎn)
    無參版的expires_at用來獲取之前設(shè)置的等待時間點(diǎn)

  • 如何獲取定時器剩余時間
    無參版的expires_from_now用來獲取距離現(xiàn)在剩余的等待時間

  • 如何等待定時器完成
    有同步和異步兩種方式,wait實(shí)現(xiàn)了阻塞式的等待,而async_wait則會啟動一個異步等待,回調(diào)入?yún)殄e誤碼

  • 如何取消定時器等待
    cancel用來取消定時器上的任何異步操作,cancel_one只會取消一個,取消順序?yàn)镕IFO。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,506評論 19 139
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,769評論 25 709
  • SNB(為了保護(hù)他,用了店名首字母,見諒。)是我們學(xué)校后門的一家咖啡店,我從大一的時候就知道了這家店,也曾在blu...
    一匹貓一頭羊閱讀 644評論 10 6
  • 落落秋日黃滿地,起起華年何處是。
    凱lv閱讀 196評論 0 4
  • 電影名:步履不停stillWalking 豆瓣評分:8.8 數(shù)據(jù)截至今日(3W人點(diǎn)評) 劇情/家庭 電影簡介: 人...
    隊(duì)友閱讀 675評論 0 5

友情鏈接更多精彩內(nèi)容