가비지컬렉션
del 과 가비지 컬렉션
del 과 가비지 컬렉션
2020.12.02cpython 의 경우 가비지 컬렉션은 주로 참조 카운트(reference count)에 기반한다. refcount 가 0이 되자마자 cpython이 객체의 __del__() 메세드를 호출하고 객체에 할당되어 있는 메모리를 해제함으로써 객체가 제거된다. 파이썬 구현에서는 참조 카운트에 기반하지 않는 더 정교한 가비지 컬렉터를 사용하므로, 객체에 대한 참조가 모두 사라진 경우에도 __del__() 메서드가 바로 호출되지 않을 수도 있다. import weakref s1 = {1, 2, 3} s2 = s1 def bye(): print("Gone with the wind...") ender = weakref.finalize(s1, bye) print(ender.alive) del s1 print(ender...