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

            牽著老婆滿街逛

            嚴(yán)以律己,寬以待人. 三思而后行.
            GMail/GTalk: yanglinbo#google.com;
            MSN/Email: tx7do#yahoo.com.cn;
            QQ: 3 0 3 3 9 6 9 2 0 .

            在使用WSAAsyncSelect中的搜集到的一些資料以及發(fā)現(xiàn)的一些問題

            1. WSAEWOULDBLOCK 錯誤說明

            在非鎖定套接字上
            函數(shù)名  說明
            WSAAccept, accept  應(yīng)用程序沒有收到連接請求,再次調(diào)用,便可檢查連接情況
            closesocket  大多數(shù)情況下,這個錯誤意味著已隨SO_LINGER選項一道調(diào)用了
            setsockopt,而且已設(shè)定了一個非零的超時值
            WSAConnect, connect 應(yīng)用程序已初始化,再次調(diào)用,便可檢查是否完成
            WSARecv,recv 
            WSARecvFrom, recvfrom 
            沒有收到數(shù)據(jù),銷后再次檢查
            WSASend, send
            WSASendTo, sendto
            外出數(shù)據(jù)無緩沖區(qū)可用,銷后再試

            2. FD_WRITE 觸發(fā)條件

            只有在三種條件下,才會發(fā)出 FD_WRITE 通知:
            . connect, WSAConnect ,一個套接字首次建立了連接;
            . accept, WSAAccept, 套接字被接受以后;
            . send, WSASend, sendto, WSASendTo操作失敗,返回了 WSAEWOULDBLOCK 錯誤,而且緩沖再次變得可用時。



            碰到了問題:
            我現(xiàn)在碰到WSAEWOULDBLOCK錯誤消息的時候,場景很有可能是這樣子的:
            1.發(fā)送緩沖滿了;
            2.處于忙狀態(tài)。

            如何解決
                一般來說,第一種場景是不太多發(fā)生的,而是第二種情況會很多,有可能是網(wǎng)絡(luò)不好也有可能是服務(wù)器處理不及很繁忙。MSDN里面顯示,在此時,如果發(fā)送緩沖空出來,系統(tǒng)會發(fā)送一個FD_WRITE消息給發(fā)送者,這時候再把發(fā)送失敗的包重新發(fā)送即可。如果是緩沖區(qū)滿了導(dǎo)致的,那么肯定會觸發(fā)一條FDWRITE消息的。不過也有可能是因為忙,那么,我們可以在觸發(fā)了WSAEWOULDBLOCK錯誤的時候,把數(shù)據(jù)放置到隊列里面,給自己發(fā)送一條FD_WRITE或許也是可行的辦法。
                不過根據(jù)上面的資料顯示,觸發(fā)條件總共有三種,收到此消息的時候可能不能辨別究竟是哪一個,其實這個很好辦,只要設(shè)置一個發(fā)送隊列,如果發(fā)送隊列不為空,那么發(fā)送之,否則就重新進行連接或者重新進行接受。

            posted on 2009-09-14 02:55 楊粼波 閱讀(761) 評論(0)  編輯 收藏 引用


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


            久久综合给久久狠狠97色| 色综合久久中文色婷婷| 久久久久99精品成人片| 久久精品国产亚洲Aⅴ蜜臀色欲| 久久播电影网| 精品久久久中文字幕人妻| 亚洲中文字幕无码久久综合网| 伊人久久综合无码成人网| 国产一久久香蕉国产线看观看| 狠狠色婷婷综合天天久久丁香| 99久久亚洲综合精品网站| 亚洲欧美久久久久9999| 97久久久精品综合88久久| 久久国产V一级毛多内射| 精品国产乱码久久久久软件| 日本道色综合久久影院| 日韩久久久久中文字幕人妻 | 久久美女人爽女人爽| 色婷婷狠狠久久综合五月| 欧美一区二区三区久久综| 久久精品国产99国产精品| 中文字幕精品久久| 人妻无码久久精品| 国产国产成人精品久久| 午夜精品久久久久| 亚洲国产成人久久精品动漫| 久久精品免费全国观看国产| 国产精品九九久久免费视频 | 色综合久久久久无码专区| 99久久免费只有精品国产| 中文字幕热久久久久久久| 精品久久久久久国产免费了| 国产美女久久精品香蕉69| 久久WWW免费人成一看片| 亚洲国产成人久久综合区| 久久国产精品免费一区| 91精品国产高清久久久久久国产嫩草 | 青青草原综合久久大伊人精品| 亚洲狠狠婷婷综合久久蜜芽| 少妇无套内谢久久久久| 久久无码专区国产精品发布|