Sever Băneșiu <banesiu.se...@gmail.com> added the comment:

>> The comment is misleading because in fact no byte is written at raw
>> level. That's because the data size is smaller than the buffer size and
>> the buffer is empty (was emptied by the last write call).

> It depends on the implementation. A different implementation may use a
> different algorithm.

I feel that no matter what implementation algorithm BufferedWriter uses
it shouldn't write smaller chunks of data than buffer's size or else the
buffer is useless.

>> I also think this is the
>> correct behavior regardless of implementation language of BufferedWriter
>> class i.e. no write call should write at raw level smaller chunks of
>> data than buffer's size unless it has to.

> But how do you decide when it "has to"? Unless you want to constrain the
> exact implemented algorithm, you can't do that in your tests.

When a direct or indirect (e.g. on close) flush is called for the file
object.

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue4263>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to