A pipe that has had an end closed is considered widowed.
Writing on such a pipe causes the writing process to receive a
Mono.Unix.Native.Signum.SIGPIPE signal.
Widowing a pipe is the only way to deliver end-of-file to a reader:
after the reader consumes any buffered data, reading a widowed
pipe returns a zero count.