mirror of
https://github.com/python/cpython.git
synced 2025-07-28 05:34:31 +00:00
Merged revisions 87710 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r87710 | gregory.p.smith | 2011-01-03 13:06:12 -0800 (Mon, 03 Jan 2011) | 4 lines issue6643 - Two locks held within the threading module on each thread instance needed to be reinitialized after fork(). Adds tests to confirm that they are and that a potential deadlock and crasher bug are fixed (platform dependant). ........
This commit is contained in:
parent
c3a4787ccb
commit
4b129d23f6
3 changed files with 155 additions and 4 deletions
|
@ -856,6 +856,10 @@ def _after_fork():
|
|||
# its new value since it can have changed.
|
||||
ident = _get_ident()
|
||||
thread._ident = ident
|
||||
# Any condition variables hanging off of the active thread may
|
||||
# be in an invalid state, so we reinitialize them.
|
||||
thread._block.__init__()
|
||||
thread._started._cond.__init__()
|
||||
new_active[ident] = thread
|
||||
else:
|
||||
# All the others are already stopped.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue