298得票10回答
如何预防SIGPIPE(或正确处理它们)

我有一个小型服务器程序,它可以在TCP或本地UNIX套接字上接受连接,读取简单的命令并(根据命令)发送回复。 问题是客户端可能对答案没兴趣,有时会提前退出。因此写入该套接字将导致发生SIGPIPE并使我的服务器崩溃。 在这里防止崩溃的最佳实践是什么?是否有一种方法可以检查另一端是否仍在读取?(...

118得票10回答
当使用管道`prog.py | othercmd`时出现了"IOError: [Errno 32] Broken pipe"错误。

我有一个非常简单的Python 3脚本:f1 = open('a.txt', 'r') print(f1.readlines()) f2 = open('b.txt', 'r') print(f2.readlines()) f3 = open('c.txt', 'r') print(f3.re...

49得票5回答
程序收到信号SIGPIPE,管道断开。

我基于POSIX套接字编写了一个客户端程序。该程序创建了多个线程并将锁定服务器。但是在使用GDB进行调试时,程序会给出一个信息(错误)。 (gdb) n Program received signal SIGPIPE, Broken pipe. [Switching to Thread 0...

30得票5回答
忽略Bash的pipefail选项对于错误代码141的影响

通过使用set -o pipefail命令来设置bash的pipefail参数,可以使得脚本在管道中任意一步骤出现非零错误时失败。 然而,我们遇到了SIGPIPE错误(错误代码141),即当向不存在的管道写入数据时出现错误。 是否有办法设置bash忽略SIGPIPE错误,或者编写一个错误处...

16得票4回答
这个C程序为什么会比预期晚生成SIGPIPE信号?

这个程序在将其传输到 "head -n 1" 后会在随机时间后生成 SIGPIPE。 我知道因为我们在第一行之后向 "head -n 1" 提供了更多内容,所以我们预计它会生成 SIGPIPE,但实际上它会在退出之前达到一个随机数(通常 > 20 and < 200)。有什么想法吗?#i...

9得票2回答
将命令输出导入“:”命令

我正在更新一个旧脚本,遇到了我不熟悉的模式: # NOTE The | : always returns true so the <cmd> doesn't fail <cmd> | : 我只在fork炸弹示例中看到过这种模式的使用。如果有人问我如何实现评论中所述...

9得票1回答
这个UWSGI错误的含义是什么?“SIGPIPE: writing to a closed pipe/socket/fd”

有几个问题与此问题相关,但没有一个能帮助我理解正在发生的事情。 完整错误信息: SIGPIPE: writing to a closed pipe/socket/fd (probably the client disconnected) on request

7得票1回答
iOS项目中使用BUMP API时出现SIGPIPE异常

我在我的Xcode项目中遇到了一个SIGPIPE错误。自从一周前开始显示此错误。如果我注释掉这个方法调用:[self configureBump];,一切都正常。我已经将BUMP API集成到我的项目中。这个API在一周前之前一直工作得很好。我不确定这个错误的原因。请问有人可以帮助我解决这个错...