[issue12028] threading._get_ident(): remove it in the doc and make it public

STINNER Victor report at bugs.python.org
Mon May 16 16:12:19 CEST 2011


STINNER Victor <victor.stinner at haypocalc.com> added the comment:

> In which case can it be None?

Oh, I misunderstood threading.py. current_thread().ident cannot be None.

During the bootstrap of a thread, Thread._ident is None, but current_thread().ident is not None because current_thread() creates a dummy thread object having the right identifer. This dummy object is destroyed at soon as the Thread object is started (see Thread._bootstrap_inner).

current_thread().ident is a little bit "suboptimal" because it gets the identifier of the thread, it reads the corresponding thread object, and then it gets the identifier of the thread object.

def current_thread():
    ...
    return _active[_get_ident()]
    ...

----------

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue12028>
_______________________________________


More information about the Python-bugs-list mailing list