• <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)

            隨筆分類(lèi)

            隨筆檔案

            文章檔案

            相冊(cè)

            搜索

            •  

            積分與排名

            • 積分 - 295356
            • 排名 - 87

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            簡(jiǎn)介

            Boost.Asio是一個(gè)跨平臺(tái)的C++庫(kù),主要用于網(wǎng)絡(luò)和其他一些底層的I/O編程。
            在大量的網(wǎng)絡(luò)編程庫(kù)中,Boost.Asio是其中的佼佼者,它于2005年加入到Boost,已經(jīng)被廣泛的測(cè)試并且應(yīng)用在多個(gè)項(xiàng)目中,如:
            1. Remobo (http://www.remobo.com),用于創(chuàng)建瞬時(shí)專(zhuān)用網(wǎng)絡(luò)(IPN)
            2. libtorrent (http://www.rasterbar.com/products/libtorrent), 用于實(shí)現(xiàn)BT的客戶(hù)端
            3. 開(kāi)源德州撲克游戲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年開(kāi)始開(kāi)發(fā),2005年12月加入到Boost 1.35,原始作者Christopher M. Kohlhoff。
            支持的平臺(tái)和編譯器如下:
            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 及以上
            在其他平臺(tái)也應(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).


            依賴(lài)關(guān)系

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


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

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


            国产综合精品久久亚洲| 亚洲国产精品无码久久青草| 中文成人久久久久影院免费观看| 久久中文字幕一区二区| 国产精品国色综合久久| 99久久精品影院老鸭窝| 久久国产精品成人片免费| 久久综合给合久久狠狠狠97色| 久久精品国产2020| 思思久久99热只有频精品66| 国产成年无码久久久免费| 婷婷五月深深久久精品| 精品久久久久久无码专区| 久久99国内精品自在现线| 99麻豆久久久国产精品免费| 欧美日韩中文字幕久久伊人| 久久激情五月丁香伊人| 日韩美女18网站久久精品| 国产精品亚洲综合久久 | 久久午夜夜伦鲁鲁片免费无码影视| 久久精品无码一区二区三区日韩 | 国产高潮国产高潮久久久91| 久久精品国产清自在天天线| 久久久久久久免费视频| 久久综合噜噜激激的五月天| 精品久久久久久国产免费了| 要久久爱在线免费观看| 777米奇久久最新地址| 久久乐国产精品亚洲综合| 久久久免费精品re6| 久久精品国产亚洲一区二区三区| 国产色综合久久无码有码| 91精品国产综合久久四虎久久无码一级| 国产精品九九久久精品女同亚洲欧美日韩综合区| 久久国产成人| 国产成人久久精品一区二区三区| 日日狠狠久久偷偷色综合0| 91精品国产高清久久久久久io| 亚洲精品乱码久久久久久蜜桃| 国产成人久久AV免费| 伊人久久久AV老熟妇色|