• <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>
            posts - 297,  comments - 15,  trackbacks - 0
            1.如何判斷socket已經(jīng)斷開
                在server端會使用專門的線程處理一條socket連接。如果socket連接斷開(異常,正常)后,如何才能感知到?server端這邊是絕對被動的,sever端不能主動斷開連接。也沒有連接鏈路維持包之類的。client端發(fā)送數(shù)據(jù)的時間也是不定的。在 socket連接斷開后, server要能夠感知到并釋放資源。
                當使用 select()函數(shù)測試一個socket是否可讀時,如果select()函數(shù)返回值為1,且使用recv()函數(shù)讀取的數(shù)據(jù)長度為0 時,就說明該socket已經(jīng)斷開。
                為了更好的判定socket是否斷開,判斷當recv()返回值小于等于0時,socket連接斷開。但是還需要判斷 errno是否等于 EINTR 。如果errno == EINTR 則說明recv函數(shù)是由于程序接收到信號后返回的,socket連接還是正常的,不應close掉socket連接。

            PS:對于堵塞socket的recv函數(shù)會在以下三種情況下返回:
            (1)recv到數(shù)據(jù)時,會返回。
            (2)在整個程序接收到信號時,返回-1。errno = EINTR。//在程序的起始階段,屏蔽掉信號的除外。部分信號還是屏蔽不掉的。
            (3)socket出現(xiàn)問題時,返回-1.具體錯誤碼看 man recv()
            (4)一定要看 man 說明,很詳細,很有幫助。
            posted on 2009-12-17 23:14 chatler 閱讀(271) 評論(0)  編輯 收藏 引用 所屬分類: Socket
            <2009年12月>
            293012345
            6789101112
            13141516171819
            20212223242526
            272829303112
            3456789

            常用鏈接

            留言簿(10)

            隨筆分類(307)

            隨筆檔案(297)

            algorithm

            Books_Free_Online

            C++

            database

            Linux

            Linux shell

            linux socket

            misce

            • cloudward
            • 感覺這個博客還是不錯,雖然做的東西和我不大相關,覺得看看還是有好處的

            network

            OSS

            • Google Android
            • Android is a software stack for mobile devices that includes an operating system, middleware and key applications. This early look at the Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
            • os161 file list

            overall

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            久久综合九色欧美综合狠狠| 伊人久久大香线蕉综合Av| 国产精品天天影视久久综合网| 久久精品无码一区二区无码| 久久久久综合网久久| 欧美性猛交xxxx免费看久久久| 无码人妻精品一区二区三区久久 | 久久91精品国产91久久麻豆| www.久久99| 久久久久99这里有精品10| 国内精品久久久人妻中文字幕| 久久精品国产亚洲精品| 日韩精品久久久久久免费| 国产一区二区精品久久岳| 精品少妇人妻av无码久久| 精品无码人妻久久久久久| 久久永久免费人妻精品下载| 亚洲а∨天堂久久精品| 人人狠狠综合久久亚洲婷婷| 亚洲AV无码久久| 亚洲第一永久AV网站久久精品男人的天堂AV| 日产精品久久久一区二区| 一级做a爰片久久毛片免费陪| 国产高潮国产高潮久久久91| 久久99精品久久久久子伦| 久久SE精品一区二区| 久久亚洲精品成人无码网站| 久久青青国产| 久久久久97国产精华液好用吗| 久久99热国产这有精品| 99久久er这里只有精品18| 2020国产成人久久精品| 人妻系列无码专区久久五月天| 精品视频久久久久| 国产成人香蕉久久久久| 久久精品国产亚洲Aⅴ香蕉| 久久亚洲电影| 久久精品日日躁夜夜躁欧美| 久久精品国产乱子伦| 婷婷伊人久久大香线蕉AV| 国产精品一区二区久久不卡|