readWithTimeout
Read up to count bytes into buffer at offset from the TTY. The number of bytes read will be returned. 0 will be returned if interruptRead is called while waiting for input, or if at least timeoutMillis have passed without data. -1 will be returned if the TTY is not interactive.
Parameters
timeoutMillis
A value of 0 will perform a non-blocking read. Otherwise, valid values are 1 to 999 which represent a maximum time (in milliseconds) to wait for data. Note: This value is not validated.