Serhiy Storchaka <storchaka+cpyt...@gmail.com> added the comment:

> On Linux, write() (and similar system calls) will transfer at most 0x7ffff000 
> (2,147,479,552) bytes, returning the number of bytes 
> actually transferred.  (This is true on both 32-bit and 64-bit 
> systems.)

This is platform-depending limitation. It can be be changed in future. In 
addition, there are other causes of writing not all data (see `man 2 write`).

> Also, it might be nice to add a note on top, that this module is for 'low 
> level' IO interface, and that it is recommended to use regular file type for 
> typical file operations (not io.FileIO) to avoid necessity of dealing 
> limitations such as the one mentioned.

This is not true for the module overall. And this is already documented for 
io.RawIOBase:

"""
Raw binary I/O typically provides low-level access to an underlying OS device 
or API, and does not try to encapsulate it in high-level primitives (this is 
left to Buffered I/O and Text I/O, described later in this page).
"""

----------
nosy: +serhiy.storchaka

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

Reply via email to