If there is data to read, non blocking.
If this is called before read then it is guaranteed that read will not block.
See Implementation
If there is data to read, non blocking.
If this is called before read then it is guaranteed that read will not block.