SIGPIPE的设计意图

SIGPIPE的设计意图


SIGPIPE 是为以下这种情况设计的:

grep “pattern” < reallyhugefile | head

grep可能会输出成千上万行文本,但 head 只会读取前10行然后就退出。一旦head退出,grep就会收到SIGPIPE,然后被杀死。这样grep就不至于一直没完没了的输出没用的内容。

如果你不想让你的程序因此被杀死,你可以自行处理SIGPIPE。这样的话你就会遇到write error,errno等于EPIPE。

原文链接: SIGPIPE and EPIPE.

你可能感兴趣的:(linux开发)