PipePair with valid handles on success, or invalid handles on failure.createPipe
Create an anonymous pipe pair.
Creates both the read and write ends of a new anonymous pipe. The pipe is configured for non-blocking I/O.
Caller owns both handles and must close them (or pass to Pipe.adoptRead/adoptWrite).
Returns
A