• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Error

            C++博客 首頁 新隨筆 聯系 聚合 管理
              217 Posts :: 61 Stories :: 32 Comments :: 0 Trackbacks
            // learn_boost_asio.cpp : 定義控制臺應用程序的入口點。
            //
            #include "stdafx.h"
            #include <iostream>
            #include <algorithm>
            #include <memory>
            #include <boost/asio.hpp>
            #include <boost/timer.hpp>
            #include <boost/lambda/lambda.hpp>
            #include <boost/function.hpp>
            #include <boost/bind.hpp>
            namespace asio = boost::asio;
            namespace posix_time = boost::posix_time ;
            // 1.同步定時器使用
            void LeanrHowToUseSynchronouslyTimer()
            {
            asio::io_service io;
            asio::deadline_timer deadLineTimer(io, posix_time::seconds(3));
            boost::timer timerTestDeadLineTimer;
            timerTestDeadLineTimer.restart();
            deadLineTimer.wait();
            double dTime = timerTestDeadLineTimer.elapsed();
            std::cout << dTime << std::endl;
            }
            ////////~
            // 2.異步定時器使用
            class CSomeObject
            {
            public:
            CSomeObject(asio::io_service& ioService) :
               m_deadLineTimer(ioService)
            {
            }
            public:
            void Test()
            {
            m_deadLineTimer.expires_from_now(boost::posix_time::seconds(3));
            m_timerTestDeadTimer.restart();
            m_deadLineTimer.async_wait(
            boost::bind(&CSomeObject::TimerHandler, this, asio::placeholders::error));
            }
            public:
            void TimerHandler(const boost::system::error_code&)
            {
            double dTime = m_timerTestDeadTimer.elapsed();
            std::cout << "time passed: " << dTime << std::endl;
            }
            private:
            boost::timer m_timerTestDeadTimer;
            asio::deadline_timer m_deadLineTimer;
            };
            void LearnHowToUseAsynchronouslyTimer()
            {
            asio::io_service ioService;
            CSomeObject obj(ioService);
            obj.Test();
            asio::io_service::work* pWork = new asio::io_service::work(ioService);
            std::auto_ptr<asio::io_service::work> spWork(pWork);
            ioService.run();
            //spWork.reset(); // Allow run() to exit. 
            }
            //////////////////////////////////////////
            int _tmain(int argc, _TCHAR* argv[])
            {
            LearnHowToUseAsynchronouslyTimer();
            return 0;
            }
            posted on 2013-03-08 18:04 Enic 閱讀(790) 評論(0)  編輯 收藏 引用 所屬分類: boost::asio
            国产精品一区二区久久精品| 久久久女人与动物群交毛片| 国产福利电影一区二区三区久久久久成人精品综合 | 欧美久久一区二区三区| 亚洲婷婷国产精品电影人久久| 模特私拍国产精品久久| 久久精品国产精品国产精品污| 欧美成a人片免费看久久| 亚洲国产另类久久久精品| 青青青青久久精品国产h| 国产精品久久久久久五月尺| 国产成人精品免费久久久久| 国产午夜电影久久| 久久精品www人人爽人人| 区亚洲欧美一级久久精品亚洲精品成人网久久久久| 亚洲人成无码久久电影网站| 91精品国产91热久久久久福利| 亚洲综合精品香蕉久久网| 国内精品久久久久久久coent| 久久精品国产亚洲AV嫖农村妇女 | 亚洲国产精品无码久久98| 国产精品无码久久久久| 无码AV中文字幕久久专区 | 久久精品人人槡人妻人人玩AV| 国内精品久久久久久久影视麻豆| 久久中文骚妇内射| 亚洲精品乱码久久久久66| 久久久久亚洲精品日久生情| 亚洲成av人片不卡无码久久| 91精品国产高清久久久久久91 | 中文字幕乱码人妻无码久久| 国产精品久久久久蜜芽| 亚洲午夜久久久| 区久久AAA片69亚洲| 狠狠色丁香婷婷久久综合| 亚洲国产精品嫩草影院久久| 久久久久久久综合日本| 天天影视色香欲综合久久| 亚洲精品国产自在久久| 国产精品久久久久久久人人看| 国产精品久久久久蜜芽|