[Python-checkins] cpython (3.4): asyncio: enhance documentation of platform support

victor.stinner python-checkins at python.org
Fri Jul 11 12:16:16 CEST 2014


http://hg.python.org/cpython/rev/a78aa88d88d0
changeset:   91644:a78aa88d88d0
branch:      3.4
parent:      91642:4b0bfda44ed8
user:        Victor Stinner <victor.stinner at gmail.com>
date:        Fri Jul 11 12:13:39 2014 +0200
summary:
  asyncio: enhance documentation of platform support

files:
  Doc/library/asyncio-eventloops.rst |  28 ++++++++++++-----
  Doc/library/asyncio-subprocess.rst |   7 ++++
  2 files changed, 26 insertions(+), 9 deletions(-)


diff --git a/Doc/library/asyncio-eventloops.rst b/Doc/library/asyncio-eventloops.rst
--- a/Doc/library/asyncio-eventloops.rst
+++ b/Doc/library/asyncio-eventloops.rst
@@ -24,6 +24,8 @@
    Equivalent to calling ``get_event_loop_policy().new_event_loop()``.
 
 
+.. _asyncio-event-loops:
+
 Available event loops
 ---------------------
 
@@ -57,6 +59,7 @@
         loop = asyncio.ProactorEventLoop()
         asyncio.set_event_loop(loop)
 
+.. _asyncio-platform-support:
 
 Platform support
 ----------------
@@ -70,21 +73,27 @@
 Common limits of Windows event loops:
 
 - :meth:`~BaseEventLoop.create_unix_server` and
-  :meth:`~BaseEventLoop.create_unix_server` are not supported: specific to UNIX
+  :meth:`~BaseEventLoop.create_unix_server` are not supported: the socket
+  family :data:`socket.AF_UNIX` is specific to UNIX
 - :meth:`~BaseEventLoop.add_signal_handler` and
   :meth:`~BaseEventLoop.remove_signal_handler` are not supported
-- Pipes are not supported: :meth:`~BaseEventLoop.connect_read_pipe` and
-  :meth:`~BaseEventLoop.connect_write_pipe`
-- :meth:`EventLoopPolicy.set_child_watcher` is not supported
+- :meth:`EventLoopPolicy.set_child_watcher` is not supported.
+  :class:`ProactorEventLoop` supports subprocesses. It has only one
+  implementation to watch child processes, there is no need to configure it.
 
 :class:`SelectorEventLoop` specific limits:
 
 - :class:`~selectors.SelectSelector` is used but it only supports sockets,
   see the `MSDN documentation of select
-  <http://msdn.microsoft.com/en-us/library/windows/desktop/ms740141%28v=vs.85%29.aspx>`_.
-- it is not possible to execute subprocesses
+  <http://msdn.microsoft.com/en-us/library/windows/desktop/ms740141%28v=vs.85%29.aspx>`_
 - :meth:`~BaseEventLoop.add_reader` and :meth:`~BaseEventLoop.add_writer` only
   accept file descriptors of sockets
+- Pipes are not supported
+  (ex: :meth:`~BaseEventLoop.connect_read_pipe`,
+  :meth:`~BaseEventLoop.connect_write_pipe`)
+- :ref:`Subprocesses <asyncio-subprocess>` are not supported
+  (ex: :meth:`~BaseEventLoop.subprocess_exec`,
+  :meth:`~BaseEventLoop.subprocess_shell`)
 
 :class:`ProactorEventLoop` specific limits:
 
@@ -95,9 +104,10 @@
   not supported
 
 The resolution of the monotonic clock on Windows is usually around 15.6 msec.
-The best resolution is 0.5 msec. The exact resolution depends on the hardware
-(availability of HPET) and the Windows configuration. See :ref:`asyncio delayed
-calls <asyncio-delayed-calls>`.
+The best resolution is 0.5 msec. The resolution depends on the hardware
+(availability of `HPET
+<http://fr.wikipedia.org/wiki/High_Precision_Event_Timer>`_) and on the Windows
+configuration. See :ref:`asyncio delayed calls <asyncio-delayed-calls>`.
 
 
 Mac OS X
diff --git a/Doc/library/asyncio-subprocess.rst b/Doc/library/asyncio-subprocess.rst
--- a/Doc/library/asyncio-subprocess.rst
+++ b/Doc/library/asyncio-subprocess.rst
@@ -1,5 +1,7 @@
 .. currentmodule:: asyncio
 
+.. _asyncio-subprocess:
+
 Subprocess
 ==========
 
@@ -16,6 +18,11 @@
         loop = asyncio.ProactorEventLoop()
         asyncio.set_event_loop(loop)
 
+.. seealso::
+
+   :ref:`Available event loops <asyncio-event-loops>` and :ref:`Platform
+   support <asyncio-platform-support>`.
+
 
 Create a subprocess: high-level API using Process
 -------------------------------------------------

-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list