• <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>
            隨筆 - 79  文章 - 58  trackbacks - 0
            <2014年8月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            常用鏈接

            留言簿(9)

            隨筆分類

            隨筆檔案

            文章檔案

            相冊

            搜索

            •  

            積分與排名

            • 積分 - 295931
            • 排名 - 87

            最新評論

            閱讀排行榜

            評論排行榜

            簡介

            Boost.Asio是一個跨平臺的C++庫,主要用于網(wǎng)絡(luò)和其他一些底層的I/O編程。
            在大量的網(wǎng)絡(luò)編程庫中,Boost.Asio是其中的佼佼者,它于2005年加入到Boost,已經(jīng)被廣泛的測試并且應(yīng)用在多個項目中,如:
            1. Remobo (http://www.remobo.com),用于創(chuàng)建瞬時專用網(wǎng)絡(luò)(IPN)
            2. libtorrent (http://www.rasterbar.com/products/libtorrent), 用于實現(xiàn)BT的客戶端
            3. 開源德州撲克游戲PokerTH (http://www. pokerth.net)
            Boost.Asio成功的抽象了包括網(wǎng)絡(luò),串口、文件在內(nèi)的同步和異步的I/O操作:
            1. read(stream, buffer [, extra options]) 
            2. async_read(stream, buffer [, extra options], handler) 
            3. write(stream, buffer [, extra options]) 
            4. async_write(stream, buffer [, extra options], handler)
            Boost.Asio支持大多數(shù)操作系統(tǒng),輕量可擴(kuò)展的,目前網(wǎng)絡(luò)部分支持TCP, UDP, IMCP,可以很方便的擴(kuò)展自定義協(xié)議。


            歷史

            Boost.Asio于2003年開始開發(fā),2005年12月加入到Boost 1.35,原始作者Christopher M. Kohlhoff。
            支持的平臺和編譯器如下:
            32位和64位Windows, Visual C++ 7.1及以上
            Windows, MinGW
            Windows ,  Cygwin (必須定義宏#define      USE_232_SOCKETS)
            基于2.4和2.6核心的Linux ,  g++ 3.3 及以上
            Solaris, g++ 3.3 及以上
            MAC OS X 10.4+, g++ 3.3 及以上
            在其他平臺也應(yīng)該能正常工作,如:
            AIX 5.3, HP-UX 11i v3, QNX Neutrino 6.3, Solaris using  Sun Studio  11+, True64 v5.1, Windows using  Borland  C++ 5.9.2+ (consult at www.boost.org for more details).


            依賴關(guān)系

            Boost.Asio 依賴如下庫:
            Boost.System: 必選,提供了操作系統(tǒng)底層函數(shù)的支持
            Boost.Regex:  可選,如果你使用了帶boost::regex參數(shù)的read_until() 和 async_read_until() 
            Boost.DateTime: 可選,如果你使用了定時器
            OpenSSL: 可選,如果需要SSL的支持


            編譯
            Boost.Asio 是只有頭文件的庫,無需編譯直接使用,但是你也可以編譯成靜態(tài)或者動態(tài)庫, 減少程序的編譯時間。
            包含頭文件  #include <boost/asio/impl/src.hpp>(如果使用SSL, 也要包含 #include <boost/asio/ssl/impl/src.hpp>), 而不是包含 <boost/asio.hpp>
            在程序的源文件里定義宏 #define BOOST_ASIO_SEPARATE_COMPILATION 
            由于Boost.Asio 依賴Boost.System和Boost.Regex, 所以編譯如下:
            bjam –with-system –with-regex stage
            如果你運行完整的測試,執(zhí)行Asio自帶的樣例,建議編譯如下:
            bjam –with-system –with-thread –with-date_time –with-regex –with- serialization stage
            注意如果定義了BOOST_ASIO_DISABLE_THREADS宏, 不論boost是否支持線程,asio將會不支持線程,
             
            posted on 2014-08-11 22:45 merlinfang 閱讀(4720) 評論(0)  編輯 收藏 引用 所屬分類: asio

            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            亚洲成人精品久久| 亚洲国产精品人久久| 久久免费视频一区| 日本久久中文字幕| 一本色综合网久久| 99久久99久久久精品齐齐| 久久精品毛片免费观看| 国产成人精品免费久久久久| 蜜桃麻豆www久久| 欧美日韩精品久久久久| 国产精品久久久久久久人人看| 久久久无码精品亚洲日韩蜜臀浪潮| 色综合久久88色综合天天| 午夜视频久久久久一区| 高清免费久久午夜精品| 久久综合色老色| 精品视频久久久久| 999久久久无码国产精品| 亚洲国产成人久久精品99| 国产91色综合久久免费分享| 青青热久久国产久精品| 精品久久久久久综合日本| 久久热这里只有精品在线观看| 久久精品国产一区二区三区日韩| 中文字幕亚洲综合久久菠萝蜜| 免费国产99久久久香蕉| 久久精品99久久香蕉国产色戒| 色播久久人人爽人人爽人人片aV| 久久精品国产亚洲综合色 | 一本色道久久99一综合| 国产午夜精品久久久久九九电影| 久久精品无码一区二区无码| 午夜视频久久久久一区| 日韩亚洲国产综合久久久| 久久久久久国产精品美女| 欧美亚洲国产精品久久蜜芽| AV无码久久久久不卡网站下载| 亚洲午夜久久久久久久久久| 久久久久国产精品人妻 | 色综合久久久久网| 97精品伊人久久大香线蕉app |