Stdin allows both synchronous and asynchronous reads from the standard input stream.
Mixing synchronous and asynchronous reads is undefined.