就像标题中说的那样,在一个tcp connect例子中


服务器使用socket(AF_INET, SOCK_STREAM, IPPROTO_TCP)函数创建sockfd,
然后将sockfd bind转换为本地sockaddr结构,
服务器accept客户端的连接,并返回一个clientfd
服务器和客户端sendrecv消息


这是问题,在第4步之后,是否需要通过手动关闭clientfd?

最佳答案

返回的clientfd是全新的文件描述符。如果不close它,该文件描述符将泄漏。

因此,是的,您应该始终closeaccept返回的文件描述符。请注意,shutdown不会关闭文件描述符,它只是防止将其用于进一步的通信。

关于linux - 是否需要关闭接受返回文件描述符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18173111/

10-15 01:23