gpt4 book ai didi

c - 在 Broken pipe 上发送行为

转载 作者:行者123 更新时间:2023-12-04 11:18:08 27 4
gpt4 key购买 nike

在编写一个简单的服务器-客户端应用程序时,我想到了这个问题。当有人试图写入损坏的管道时,将生成一个 SIGPIPE。假设我在我的代码中处理信号。

现在 write 调用返回什么错误 - EPIPE 或 EINTR(因为它被信号中断)。我尝试了一个示例程序,我似乎总是得到 EPIPE。这是有保证的行为还是可能是两个错误值中的任何一个?

最佳答案

POSIX 表示应该返回 EPIPE 并发送 SIGPIPE:

  • 对于管道或 FIFO 的 write() 或 pwrite() 未打开以供任何进程读取,或只有一端打开。
  • 对于不再连接或关闭以进行写入的套接字进行 write()。

你可以看看 POSIX 标准 here

关于c - 在 Broken pipe 上发送行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3182125/

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