gpt4 book ai didi

c++ - Socket::close() 和 StreamSocket::shutdown() 之间的区别

转载 作者:行者123 更新时间:2023-11-28 02:19:19 24 4
gpt4 key购买 nike

当使用 Poco 的 StreamSocket 类并且您想关闭套接字连接时,Poco 文档和函数实现都不清楚 Socket::close()StreamSocket::shutdown() 将是最适合调用的函数。在这些似乎转发到 POSIX 函数的平台上,shutdown() 的手册页指出发送/接收将停止,但没有说明连接本身。我是否可以安全地假设 close() 本质上将成为 shutdown() 所做的超集,因此 close() 是哪个更合适?如果是这样,是否有一个示例场景,其中 shutdown() 是更合适的调用?

最佳答案

shutdown 函数关闭连接的发送端和/或连接的接收端。 close 函数只是关闭套接字,不一定对连接有任何影响。但是,如果连接没有引用(因为您关闭最后一个),那么操作系统将关闭连接。

关于c++ - Socket::close() 和 StreamSocket::shutdown() 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33075482/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com