gpt4 book ai didi

sockets - 套接字 : constantly getting POLLHUP on half-close

转载 作者:行者123 更新时间:2023-12-03 11:52:23 27 4
gpt4 key购买 nike

我写了一个在 linux 上运行的套接字服务器,但这可能不是 linux 规范。

我用 poll()检查客户端的状态。我的客户在发送请求后进行主动(半)关闭。服务器不断获取POLLHUPPOLLERR ,因为客户端的半关闭。我也看到POLLRDHUP ,所以我知道这实际上是半关闭而不是连接关闭/重置。我的问题是我总是会收到这些事件,即使我已经从之前的民意调查中知道有一个半关闭。

我怎样才能禁用它,这样我就不会再收到 theis 事件了?我试着做额外的 read()并做一个 shutdown(fd, SHUT_RD) ,但似乎没有帮助。我不要poll为了我已经处理过的事件而醒来。

最佳答案

一旦接近一半,请停止将 fd 包含在 readfds 集中。除了半关闭之外,没有什么可读的了。从这一点来看,您唯一感兴趣的是“可写”事件。

关于sockets - 套接字 : constantly getting POLLHUP on half-close,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6609925/

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