如何关闭插座

How to close socket

本文关键字:插座 何关闭      更新时间:2023-10-16

在Ubuntu上运行c++。我用这种方式打开插座:

socket(AF_PACKET, SOCK_RAW, IPPROTO_RAW))

使用结束后我需要做什么?只要程序运行,就会使用一些套接字,我需要检查一下吗?看看插座是否还存在?

在对其文件描述符调用close之前,套接字一直存在。既然你有一个原始的IP套接字,就没有"活着"的概念。使用完毕后关闭即可。

正如其文档/手册页所说,socket()返回一个打开的文件描述符,如果失败则返回-1。这意味着你必须像关闭任何其他文件描述符一样关闭它:

close(sockfd);