一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

socket中的linger結(jié)構(gòu)體的作用

 _Le0n_ 2014-04-03

 TCP連接斷開的時候調(diào)用closesocket函數(shù),已經(jīng)討論過有優(yōu)雅的斷開和強(qiáng)制斷開,那么如何設(shè)置斷開連接的方式呢?是通過設(shè)置socket描述符一個linger結(jié)構(gòu)體屬性。

linger結(jié)構(gòu)體數(shù)據(jù)結(jié)構(gòu)如下:

struct linger

{

     int l_onoff;

     int l_linger;

};

有三種組合方式:

第一種

    l_onoff = 0;

    l_linger忽略

    這種方式下,就是在closesocket的時候立刻返回,底層會將未發(fā)送完的數(shù)據(jù)發(fā)送完成后再釋放資源,也就是優(yōu)雅的退出


第二種

    l_onoff非零

    l_linger = 0;

    這種方式下,在調(diào)用closesocket的時候同樣會立刻返回,但不會發(fā)送未發(fā)送完成的數(shù)據(jù),而是通過一個REST包強(qiáng)制的關(guān)閉socket描述符,也就是強(qiáng)制的退出。


第三種

    l_onoff非零

    l_linger > 0

    這種方式下,在調(diào)用closesocket的時候不會立刻返回,內(nèi)核會延遲一段時間,這個時間就由l_linger得值來決定。如果超時時間到達(dá)之前,發(fā)送完未發(fā)送的數(shù)據(jù)(包括FIN包)并得到另一端的確認(rèn),closesocket會返回正確,socket描述符優(yōu)雅性退出。否則,closesocket會直接返回錯誤值,未發(fā)送數(shù)據(jù)丟失,socket描述符被強(qiáng)制性退出。需要注意的時,如果socket描述符被設(shè)置為非堵塞型,則closesocket會直接返回值。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    日本人妻熟女一区二区三区| 一区二区三区亚洲国产| 一区二区免费视频中文乱码国产| 亚洲欧美日本国产不卡 | 日本婷婷色大香蕉视频在线观看| 久久精品国产亚洲av麻豆尤物| 玩弄人妻少妇一区二区桃花| 国产精品不卡免费视频| 欧美日韩成人在线一区| 国产欧美一区二区久久| 国产精品欧美一区二区三区| 91亚洲精品亚洲国产| 91久久国产福利自产拍 | 六月丁香六月综合缴情| 成人欧美一区二区三区视频| 日本一品道在线免费观看| 日韩午夜老司机免费视频| 亚洲中文字幕人妻系列| 偷拍美女洗澡免费视频| 人妻中文一区二区三区| 国产中文字幕一区二区| 人妻内射在线二区一区| 出差被公高潮久久中文字幕| 日韩综合国产欧美一区| 大香伊蕉欧美一区二区三区| 日本二区三区在线播放| 日本本亚洲三级在线播放| 欧美色婷婷综合狠狠爱| 欧美日韩精品综合在线| 久久精品久久久精品久久| 丰满人妻一二区二区三区av| 一二区中文字幕在线观看| 婷婷激情五月天丁香社区| 免费一级欧美大片免费看| 亚洲国产成人久久99精品| 国产免费一区二区不卡| 国产欧美日产中文一区| 国产精品视频一区二区秋霞| 欧美一区日韩二区亚洲三区| 亚洲成人精品免费在线观看| 99少妇偷拍视频在线|