From: Antoine Pitrou Date: Fri, 15 Feb 2013 20:27:18 +0000 (+0100) Subject: Issue #17208: add a note about the termination behaviour of daemon threads. X-Git-Tag: v3.2.4rc1~102 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=38b82543f7f38d7e23586e6773e0e114d335f22d;p=python Issue #17208: add a note about the termination behaviour of daemon threads. --- diff --git a/Doc/library/threading.rst b/Doc/library/threading.rst index 4a01211687..e30f0e354d 100644 --- a/Doc/library/threading.rst +++ b/Doc/library/threading.rst @@ -244,6 +244,12 @@ is that the entire Python program exits when only daemon threads are left. The initial value is inherited from the creating thread. The flag can be set through the :attr:`~Thread.daemon` property. +.. note:: + Daemon threads are abruptly stopped at shutdown. Their resources (such + as open files, database transactions, etc.) may not be released properly. + If you want your threads to stop gracefully, make them non-daemonic and + use a suitable signalling mechanism such as an :class:`Event`. + There is a "main thread" object; this corresponds to the initial thread of control in the Python program. It is not a daemon thread.