PEP 446: add new os.get/set_blocking() functions

This commit is contained in:
Victor Stinner 2013-07-07 15:05:58 +02:00
parent 9cb23db25d
commit 010039d965
1 changed files with 11 additions and 2 deletions

View File

@ -127,21 +127,30 @@ The atomicity is not guaranteed. If the platform does not support
setting close-on-exec and blocking flags at the creation of the file setting close-on-exec and blocking flags at the creation of the file
descriptor or socket, the flags are set using additional system calls. descriptor or socket, the flags are set using additional system calls.
New Functions New Functions
------------- -------------
Add new functions the get and set the close-on-exec flag of a file Add new functions the get and set the close-on-exec flag of a file
descriptor: descriptor, available on all platforms:
* ``os.get_cloexec(fd:int) -> bool`` * ``os.get_cloexec(fd:int) -> bool``
* ``os.set_cloexec(fd:int, cloexec: bool)`` * ``os.set_cloexec(fd:int, cloexec: bool)``
Add new functions the get and set the blocking flag of a file
descriptor, only available on UNIX:
* ``os.get_blocking(fd:int) -> bool``
* ``os.set_blocking(fd:int, blocking: bool)``
Other Changes Other Changes
------------- -------------
The ``subprocess.Popen`` class must clear the close-on-exec flag of file The ``subprocess.Popen`` class must clear the close-on-exec flag of file
descriptors of the ``pass_fds`` parameter. descriptors of the ``pass_fds`` parameter. The flag is cleared in the
child process before executing the program, the change does not change
the flag in the parent process.
The close-on-exec flag must also be set on private file descriptors and The close-on-exec flag must also be set on private file descriptors and
sockets in the Python standard library. For example, on UNIX, sockets in the Python standard library. For example, on UNIX,