mirror of
https://github.com/python/cpython.git
synced 2025-08-15 22:30:42 +00:00
[3.10] bpo-25130: Add calls of gc.collect() in tests to support PyPy (GH-28005) (GH-28027)
(cherry picked from commit 2a8127cafe
)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
This commit is contained in:
parent
c081649e6d
commit
462c1f0403
35 changed files with 139 additions and 13 deletions
|
@ -37,7 +37,7 @@ class BaseLocalTest:
|
|||
t.join()
|
||||
del t
|
||||
|
||||
gc.collect()
|
||||
support.gc_collect() # For PyPy or other GCs.
|
||||
self.assertEqual(len(weaklist), n)
|
||||
|
||||
# XXX _threading_local keeps the local of the last stopped thread alive.
|
||||
|
@ -46,7 +46,7 @@ class BaseLocalTest:
|
|||
|
||||
# Assignment to the same thread local frees it sometimes (!)
|
||||
local.someothervar = None
|
||||
gc.collect()
|
||||
support.gc_collect() # For PyPy or other GCs.
|
||||
deadlist = [weak for weak in weaklist if weak() is None]
|
||||
self.assertIn(len(deadlist), (n-1, n), (n, len(deadlist)))
|
||||
|
||||
|
@ -89,7 +89,7 @@ class BaseLocalTest:
|
|||
# 2) GC the cycle (triggers threadmodule.c::local_clear
|
||||
# before local_dealloc)
|
||||
del cycle
|
||||
gc.collect()
|
||||
support.gc_collect() # For PyPy or other GCs.
|
||||
e1.set()
|
||||
e2.wait()
|
||||
|
||||
|
@ -190,7 +190,7 @@ class BaseLocalTest:
|
|||
x.local.x = x
|
||||
wr = weakref.ref(x)
|
||||
del x
|
||||
gc.collect()
|
||||
support.gc_collect() # For PyPy or other GCs.
|
||||
self.assertIsNone(wr())
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue