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

            IOCP完成端口源代碼

            Posted on 2011-07-04 11:40 chugf 閱讀(4176) 評(píng)論(13)  編輯 收藏 引用

            關(guān)于IOCP完成端口的介紹有很多,這里就不介紹概念了。

            如果不考慮跨平臺(tái)問題,在Windows下IOCP(I/O Completion Port,I/O完成端口)是性能最好的一種I/O模型。

            以下是本人開發(fā)的IO完成端口服務(wù)器/客戶端介紹:

            名稱:x-net

            版本:1.0.0

            特點(diǎn):針對(duì)TCP網(wǎng)絡(luò)通訊進(jìn)行封裝,使用widows下效率最高的IOCP通訊方式,工程包括服務(wù)端和客戶端。
                  可應(yīng)用于即時(shí)網(wǎng)絡(luò)通訊、跨平臺(tái)網(wǎng)絡(luò)通訊等。
            功能:
                  1、支持多用戶并發(fā)連接通訊,理論支持10000+在線用戶,實(shí)際運(yùn)行5000+左右
                  2、支持自定義通訊頭協(xié)議,代碼里實(shí)現(xiàn)了一個(gè)簡(jiǎn)單的組包拆包功能
                  3、支持轉(zhuǎn)發(fā)通訊包服務(wù)
                  4、支持文件下載上傳

            說明:
            使用了開源日志庫log4cplus,網(wǎng)址:http://log4cplus.sourceforge.net/
            簡(jiǎn)單用例見test目錄:
            test.vcxproj             -- VS2010工程
            test_2005.vcproj   -- VS2005工程

            源代碼下載地址:http://code.google.com/p/x-net/

            Feedback

            # re: IOCP完成端口源代碼  回復(fù)  更多評(píng)論   

            2011-07-04 15:15 by Enic
            樓主,你確定你用的是Window IOCP技術(shù)?

            # re: IOCP完成端口源代碼  回復(fù)  更多評(píng)論   

            2011-07-04 21:22 by 會(huì)員管理系統(tǒng)
            感謝博主分享,下下來調(diào)試下看效果如何先

            # re: IOCP完成端口源代碼  回復(fù)  更多評(píng)論   

            2011-07-04 23:11 by 漂漂
            編譯有兩個(gè)問題:可能是版本沒有對(duì)應(yīng)。
            #include "Queue.h"
            #include "Queue.h"

            # re: IOCP完成端口源代碼  回復(fù)  更多評(píng)論   

            2011-07-05 09:45 by chugf
            我在VS2010和VS2005下都編譯成功的,“Queue.h”文件在“include”目錄下的

            # re: IOCP完成端口源代碼  回復(fù)  更多評(píng)論   

            2011-07-05 09:45 by chugf
            @Enic
            有問題嗎?
            有錯(cuò)誤歡迎指正.

            # re: IOCP完成端口源代碼  回復(fù)  更多評(píng)論   

            2011-07-05 14:44 by Benjamin
            vc10編譯test編譯錯(cuò)誤:
            LNK1104: cannot open file 'xnet_d.lib'
            VC10編譯xnet的編譯錯(cuò)誤:
            fatal error LNK1104: cannot open file 'xnet_d.lib'
            x-net\source\queue.cpp(2): fatal error C1083: Cannot open include file: 'comm\Queue.h': No such file or directory
            x-net\source\iocp.cpp(2): fatal error C1083: Cannot open include file: 'comm\IOCP.h': No such file or directory

            # re: IOCP完成端口源代碼  回復(fù)  更多評(píng)論   

            2011-07-05 15:20 by chugf
            @Benjamin
            把#include "comm\Queue.h"改為#include "queue.h"
            #include "comm\IOCP.h"改為#include "iocp.h"
            我在修改路徑的時(shí)候忘記改.cpp文件了,不好意思

            # re: IOCP完成端口源代碼  回復(fù)  更多評(píng)論   

            2011-07-05 23:04 by Benjamin
            改過頭文件后,VC10運(yùn)行test錯(cuò)誤:
            \x-net\bin\debug\log4cplusD.dll', Cannot find or open the PDB file;

            # re: IOCP完成端口源代碼  回復(fù)  更多評(píng)論   

            2011-07-06 09:05 by chugf
            @Benjamin
            開源日志庫log4cplus,網(wǎng)址:http://log4cplus.sourceforge.net/
            下載后自己編譯一下就OK了,我沒有打包進(jìn)去

            # re: IOCP完成端口源代碼  回復(fù)  更多評(píng)論   

            2011-07-06 12:26 by Marvin
            國(guó)內(nèi)的高手越來越多了

            # re: IOCP完成端口源代碼  回復(fù)  更多評(píng)論   

            2011-07-07 22:21 by 放屁阿狗
            linux里面的iocp叫epoll,反正很多人老提這個(gè)iocp,原理其實(shí)也很簡(jiǎn)單,直接由kernel調(diào)度反射回user空間的函數(shù)地址,提高效率,但往往軟件的性能不是在于連接數(shù)和底層通信性能的提高,而是軟件的其他應(yīng)用部分做的很差,比如不考慮數(shù)據(jù)的訪問負(fù)荷等等,這些問題不注意,下面做的再好也是白搭,所以我覺得比較無趣

            # re: IOCP完成端口源代碼  回復(fù)  更多評(píng)論   

            2011-07-08 09:01 by chugf
            @放屁阿狗
            我只是提供一個(gè)通訊架構(gòu),而不是一個(gè)完整的解決方案。網(wǎng)上有開源的ACE,功能肯定比我的強(qiáng)大。

            # re: IOCP完成端口源代碼  回復(fù)  更多評(píng)論   

            2012-12-11 13:55 by jacey
            我喜歡!感謝樓主!

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


            posts - 5, comments - 22, trackbacks - 0, articles - 0

            Copyright © chugf

            色婷婷久久综合中文久久一本| 精品国产乱码久久久久软件| 亚洲一区中文字幕久久| segui久久国产精品| 一本一本久久aa综合精品| 久久综合综合久久狠狠狠97色88| 色婷婷久久久SWAG精品| 久久A级毛片免费观看| 久久精品国产99久久香蕉| 久久久亚洲欧洲日产国码二区| 国产精品99久久不卡| 奇米影视7777久久精品| 亚洲精品无码久久毛片| 久久精品国产亚洲欧美| 久久人人爽人人爽人人爽| 狠狠久久综合伊人不卡| 久久国产精品久久精品国产| 2020久久精品亚洲热综合一本| 亚洲国产精品久久久久久| 久久青青草原精品国产| 亚洲欧美另类日本久久国产真实乱对白 | 无码人妻少妇久久中文字幕蜜桃 | 国产成人久久精品一区二区三区| 狠狠色丁香久久婷婷综合五月| 久久夜色撩人精品国产| 国产精品久久久久久福利漫画| 无码人妻久久一区二区三区 | 久久久久久无码Av成人影院 | 久久综合综合久久狠狠狠97色88| 色欲综合久久中文字幕网| 中文字幕亚洲综合久久菠萝蜜| 国产高清美女一级a毛片久久w| 久久免费小视频| 国产L精品国产亚洲区久久| 国产亚洲综合久久系列| 国产成人精品白浆久久69| 久久国产热精品波多野结衣AV | 青青草原综合久久大伊人精品| 精品久久久久久| 国产91久久综合| 久久无码一区二区三区少妇 |