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:
Gregory P. Smith 2011-01-04 00:51:50 +00:00
parent c3a4787ccb
commit 4b129d23f6
3 changed files with 155 additions and 4 deletions

View file

@ -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.