mirror of
https://github.com/python/cpython.git
synced 2025-07-31 23:23:11 +00:00
Issue 5009: multiprocessing: failure in manager._debug_info()
This commit is contained in:
parent
e741cc607c
commit
7314b38168
2 changed files with 5 additions and 3 deletions
|
@ -136,7 +136,7 @@ class Server(object):
|
||||||
self.listener = Listener(address=address, backlog=5)
|
self.listener = Listener(address=address, backlog=5)
|
||||||
self.address = self.listener.address
|
self.address = self.listener.address
|
||||||
|
|
||||||
self.id_to_obj = {0: (None, ())}
|
self.id_to_obj = {'0': (None, ())}
|
||||||
self.id_to_refcount = {}
|
self.id_to_refcount = {}
|
||||||
self.mutex = threading.RLock()
|
self.mutex = threading.RLock()
|
||||||
self.stop = 0
|
self.stop = 0
|
||||||
|
@ -298,7 +298,7 @@ class Server(object):
|
||||||
keys = self.id_to_obj.keys()
|
keys = self.id_to_obj.keys()
|
||||||
keys.sort()
|
keys.sort()
|
||||||
for ident in keys:
|
for ident in keys:
|
||||||
if ident != 0:
|
if ident != '0':
|
||||||
result.append(' %s: refcount=%s\n %s' %
|
result.append(' %s: refcount=%s\n %s' %
|
||||||
(ident, self.id_to_refcount[ident],
|
(ident, self.id_to_refcount[ident],
|
||||||
str(self.id_to_obj[ident][0])[:75]))
|
str(self.id_to_obj[ident][0])[:75]))
|
||||||
|
@ -310,7 +310,7 @@ class Server(object):
|
||||||
'''
|
'''
|
||||||
Number of shared objects
|
Number of shared objects
|
||||||
'''
|
'''
|
||||||
return len(self.id_to_obj) - 1 # don't count ident=0
|
return len(self.id_to_obj) - 1 # don't count ident='0'
|
||||||
|
|
||||||
def shutdown(self, c):
|
def shutdown(self, c):
|
||||||
'''
|
'''
|
||||||
|
|
|
@ -1057,8 +1057,10 @@ class _TestZZZNumberOfObjects(BaseTestCase):
|
||||||
multiprocessing.active_children() # discard dead process objs
|
multiprocessing.active_children() # discard dead process objs
|
||||||
gc.collect() # do garbage collection
|
gc.collect() # do garbage collection
|
||||||
refs = self.manager._number_of_objects()
|
refs = self.manager._number_of_objects()
|
||||||
|
debug_info = self.manager._debug_info()
|
||||||
if refs != EXPECTED_NUMBER:
|
if refs != EXPECTED_NUMBER:
|
||||||
print self.manager._debug_info()
|
print self.manager._debug_info()
|
||||||
|
print debug_info
|
||||||
|
|
||||||
self.assertEqual(refs, EXPECTED_NUMBER)
|
self.assertEqual(refs, EXPECTED_NUMBER)
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue