Linux socket shutdown()和close()
Posted jhc888007的笔记
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux socket shutdown()和close()相关的知识,希望对你有一定的参考价值。
- int close(int sockfd)
#include<unistd.h>
将套接字标记为关闭,尝试发送已经排队的数据,将套接字描述符减一,如果描述符为0则发送FIN触发套接字关闭
- int shutdown(int sockfd,int how)
#include <sys/socket.h>
SHUT_RD代表关闭发送通道,还会尝试发送已经排队的数据,然后发送FIN
SHUT_WR代表关闭接收通道,如果接收到回复RST
SHUT_RDWR代表同时关闭发送结束通道
shutdown只会发送FIN不会释放套接字
以上是关于Linux socket shutdown()和close()的主要内容,如果未能解决你的问题,请参考以下文章
C语言 socket shutdown()函数(将与 sockfd 关联的套接字上的全双工连接全部或部分关闭)
Socket 编程中 close() 和 shutdown() 有啥区别?