From 790202d61308efd3e7bc69cd61bff2306d789e57 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Fri, 7 Feb 2014 19:03:05 +0100 Subject: [PATCH] asyncio doc: mention that asyncio is not thread-safe --- Doc/library/asyncio-dev.rst | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Doc/library/asyncio-dev.rst b/Doc/library/asyncio-dev.rst index 686e496053..aab925b1e5 100644 --- a/Doc/library/asyncio-dev.rst +++ b/Doc/library/asyncio-dev.rst @@ -23,6 +23,12 @@ schedule a coroutine from a different thread:: loop.call_soon_threadsafe(asyncio.async, coro_func()) +Most asyncio objects are not thread safe. You should only worry if you access +objects outside the event loop. For example, to cancel a future, don't call +directly its :meth:`Future.cancel` method, but:: + + loop.call_soon_threadsafe(fut.cancel) + To handle signals and to execute subprocesses, the event loop must be run in the main thread. -- 2.40.0