Linux api close和shutdown的区别

关闭连接

关闭一个连接实际上就是关闭该连接对应的socket。

#include <unistd.h>
int close(int fd);
int shutdown(int fd);

区别

close调用并非总是立即关闭一个连接,而是将fd的引用计数为0时,才真正关闭连接。多进程程序中,一次fork系统调用默认将使父进程中打开的socket的引用计数加1。
如果无论如何都要终止连接,可以使用shutdown。

猜你喜欢

转载自blog.csdn.net/weixin_40021744/article/details/87940148