Olvasd el a kódot figyelmesen
import weakref
import gc
log = []
class Connection:
def __init__(self, name):
self.name = name
def cleanup(name):
log.append(f"closed:{name}")
c1 = Connection("a")
c2 = Connection("b")
weakref.finalize(c1, cleanup, c1.name)
weakref.finalize(c2, cleanup, c2.name)
print(f"alive:{len(log)}")
del c1
gc.collect()
print(f"after_c1:{log}")
del c2
gc.collect()
print(f"after_c2:{log}")
Mit ír ki a program? Írd ide: