Previously, calls to `open` blocked when creating a writeable pipe. This could cause other calls to block indefinitely, waiting for the pipe to become available. Now, we open the pipe in nonblocking mode, which allows us to retry indefinitely, checking `stopReadOperation` each time to find out whether `close` has been called and allowing a graceful exit.tags/2021-05-28