Clarified documentation note on module-level convenience functions.

This commit is contained in:
Vinay Sajip 2014-01-15 13:28:39 +00:00
parent 71337cb281
commit 350e623623
1 changed files with 9 additions and 8 deletions

View File

@ -1002,14 +1002,15 @@ functions.
Logs a message with level *level* on the root logger. The other arguments are
interpreted as for :func:`debug`.
.. note:: The above module-level functions which delegate to the root
logger should *not* be used in threads, in versions of Python earlier
than 2.7.1 and 3.2, unless at least one handler has been added to the
root logger *before* the threads are started. These convenience functions
call :func:`basicConfig` to ensure that at least one handler is
available; in earlier versions of Python, this can (under rare
circumstances) lead to handlers being added multiple times to the root
logger, which can in turn lead to multiple messages for the same event.
.. note:: The above module-level convenience functions, which delegate to the
root logger, call :func:`basicConfig` to ensure that at least one handler
is available. Because of this, they should *not* be used in threads,
in versions of Python earlier than 2.7.1 and 3.2, unless at least one
handler has been added to the root logger *before* the threads are
started. In earlier versions of Python, due to a thread safety shortcoming
in :func:`basicConfig`, this can (under rare circumstances) lead to
handlers being added multiple times to the root logger, which can in turn
lead to multiple messages for the same event.
.. function:: disable(lvl)