virtual int writeAtLeast( char * buf, int atleast, int maxr)
Blocks as necessary to write at least min(atleast,maxr)
characters,
then may write additional characters up to the limit of maxr
, if
the additional characters can be write without blocking.