[Python-Dev] Raw I/O writelines() broken

Antoine Pitrou solipsis at pitrou.net
Mon Aug 20 23:42:56 CEST 2012


On 2012年8月20日 23:17:10 +0200
Antoine Pitrou <solipsis at pitrou.net> wrote:
>> Hello,
>> I was considering a FileIO.writelines() implementation based on
> writev() and I noticed that the current RawIO.writelines()
> implementation is broken: RawIO.write() can return a partial write but
> writelines() ignores the result and happily proceeds to the next
> iterator item (and None is returned at the end).
>> (it's probably broken with non-blocking streams too, for the same
> reason)
>> In the spirit of RawIO.write(), I think RawIO.writelines() could return
> the number of bytes written (allowing for partial writes).

Another possibility would be a separate RawIO.writev() that would allow
partial writes, and to fix RawIO.writelines() to always do complete
writes.
Regards
Antoine.
-- 
Software development and contracting: http://pro.pitrou.net


More information about the Python-Dev mailing list

AltStyle によって変換されたページ (->オリジナル) /