pocketpy/tests/71_gc_bug.py
blueloveTH 0c897df2c6 backup
2025-08-26 00:48:58 +08:00

47 lines
614 B
Python

# a=[]
# import gc
# gc.collect()
# # a.append(a)
# print(globals().items())
# del a
# print(list(globals().items()))
# print(globals()['gc'])
# gc.collect()
d = object()
d.__name__ = '__main__'
d.__package__ = ''
d.__path__ = '__main__'
d.a = []
d.gc = 1
assert d.gc == 1
del d.a
assert not hasattr(d, 'a')
assert d.gc == 1
# [0, 1, 6, 7, 4, 5, 2, 3]
# 0 __name__ [0]
# 1 __package__ [1]
# 2 nil
# 3 nil
# 4 gc [4]
# 5 nil
# 6 __path__ [2]
# 7 a [3]
import gc
gc.collect()
a = []
del a
assert gc.collect() == 1
# a = []
# a.append(a)
# del a
# assert gc.collect() == 1