Returns number of bytes that can be read without blocking
force any writes to actually be sent
Writes all src bytes and suspends until all bytes written. Causes flush if buffer filled up or when autoFlush Crashes if channel get closed while writing