最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

如何在c語言下關(guān)閉socket

 更新時間:2019年05月20日 14:19:58   作者:a787188834  
如果不主動關(guān)閉socket的話,系統(tǒng)不會自動關(guān)閉的,除非當前進程掛掉了,操作系統(tǒng)把占用的socket回收了才會關(guān)閉。下面小編來簡單介紹下

c語言關(guān)閉socket的兩種方式

一、shutdown()

#include<sys/socket.h>

int shutdown(int sockfd,int how);

how的方式有三種分別是

SHUT_RD(0):關(guān)閉sockfd上的讀功能,此選項將不允許sockfd進行讀操作。不允許接受。

SHUT_WR(1):關(guān)閉sockfd的寫功能,此選項將不允許sockfd進行寫操作。不允許發(fā)送。

SHUT_RDWR(2):關(guān)閉sockfd的讀寫功能。不允許發(fā)送和接受(和 close() 一樣)。

成功則返回0,錯誤返回-1,錯誤碼errno:EBADF表示sockfd不是一個有效描述符;ENOTCONN表示sockfd未連接;ENOTSOCK表示sockfd是一個文件描述符而不是socket描述符。

二、close()

#include<unistd.h>

int close(int fd);

關(guān)閉讀寫。它將防止套接字上更多的數(shù)據(jù)的讀寫。任何在另一端讀寫套接字的企 圖都將返回錯誤信息。

成功則返回0,錯誤返回-1,錯誤碼errno:EBADF表示fd不是一個有效描述符;EINTR表示close函數(shù)被信號中斷;EIO表示一個IO錯誤。

區(qū)別:

1、shutdown()在如何關(guān)閉套接字上有多一點的控制。shutdown 可以單向關(guān)閉,Close不可以。

2、當多線程共享/調(diào)用同一個Socket時,Close只是會減1,直到減到0才會真正去關(guān)閉Socket,

而shutdown則不會理會有多少線程在用,強制直接關(guān)閉socket.

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • C和C++11之enum枚舉的具體使用方法

    C和C++11之enum枚舉的具體使用方法

    這篇文章主要介紹了C和C++11之enum枚舉的具體使用方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-12-12
  • 用C語言實現(xiàn)猜數(shù)字游戲

    用C語言實現(xiàn)猜數(shù)字游戲

    這篇文章主要為大家詳細介紹了用C語言實現(xiàn)猜數(shù)字游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-10-10
  • C++ throw關(guān)鍵字實現(xiàn)拋出異常和異常規(guī)范

    C++ throw關(guān)鍵字實現(xiàn)拋出異常和異常規(guī)范

    本文主要介紹了C++ throw關(guān)鍵字實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • C語言 運算符詳細介紹及示例代碼

    C語言 運算符詳細介紹及示例代碼

    本文介紹C語言 運算符,這里整理了運算符的基礎(chǔ)知識,并附示例代碼,希望能幫助剛剛開始學習 C語言的同學
    2016-08-08
  • C語言的sleep、usleep、nanosleep等休眠函數(shù)的使用

    C語言的sleep、usleep、nanosleep等休眠函數(shù)的使用

    本文主要介紹了C語言的sleep、usleep、nanosleep等休眠函數(shù)的使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-03-03
  • Qt QStandardItemModel用法小結(jié)

    Qt QStandardItemModel用法小結(jié)

    QStandardItemModel可用作標準Qt數(shù)據(jù)類型的存儲庫,本文主要介紹了Qt QStandardItemModel用法小結(jié),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-12-12
  • C語言函數(shù)棧幀詳解

    C語言函數(shù)棧幀詳解

    下面小編就為大家?guī)硪黄獪\談C語言函數(shù)調(diào)用參數(shù)壓棧的相關(guān)問題。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2021-10-10
  • C++印刷模板使用方法詳解

    C++印刷模板使用方法詳解

    模板是C++支持參數(shù)化多態(tài)的工具,使用模板可以使用戶為類或者函數(shù)聲明一種一般模式,使得類中的某些數(shù)據(jù)成員或者成員函數(shù)的參數(shù)、返回值取得任意類型
    2022-11-11
  • 如何通過C++求出鏈表中環(huán)的入口結(jié)點

    如何通過C++求出鏈表中環(huán)的入口結(jié)點

    本文主要介紹了通過C++求解鏈表中環(huán)的入口結(jié)點,即給一個長度為n鏈表,若其中包含環(huán),請找出該鏈表的環(huán)的入口結(jié)點,否則,返回null。需要的朋友可以參考一下
    2021-12-12
  • C 語言中實現(xiàn)環(huán)形緩沖區(qū)

    C 語言中實現(xiàn)環(huán)形緩沖區(qū)

    本文主要是介紹 C語言實現(xiàn)環(huán)形緩沖區(qū),并附有詳細實現(xiàn)代碼,具有一定的參考價值,希望能幫助有需要的小伙伴
    2016-07-07

最新評論

岳普湖县| 九台市| 黄大仙区| 黔西| 定陶县| 商洛市| 汤原县| 广元市| 郴州市| 泸定县| 东兰县| 新丰县| 淮滨县| 兴国县| 天台县| 宜兰市| 历史| 凤翔县| 浦城县| 昌图县| 扎囊县| 聂拉木县| 南和县| 芒康县| 都江堰市| 永嘉县| 固阳县| 紫金县| 尚志市| 保定市| 河南省| 德令哈市| 晋宁县| 长沙市| 乾安县| 奉节县| 娱乐| 七台河市| 五家渠市| 霞浦县| 湄潭县|