Highly concurrent drop-in replacement for
concurrent.Writer implements highly concurrent buffering for an
In particular, writes will not block while a
Flush() call is in progress as
long as enough buffer space is available.
Note however that writes will still block in a number of cases, e.g. when another write larger than the buffer size is in progress. Also, concurrent flushes (whether explicit or triggered by the buffer filling up) will block one another.