개발Study/python

python 소멸자

happy90 2021. 3. 11. 15:26

Python class 소멸자

소멸자는 class 내에서 아래와 같이 작성한다.

class className:

    def __del__(self):

        내용~~~~

 

보통 소멸자를 호출할 때 사용법을

del className

위와 같이 알고있고, 나도 그렇게 알고있었다. (나만 그렇게 알고있던거 아닐까?;;)

소멸자가 호출되는 정확한 시점은 위와같이 del을 호출했을 때가 아니라, 실제로 객체가 모두 소멸되는 시점에 callback으로 호출된다.

그러므로 객체를 소멸시킬 때 작업을 다 해놓고, 소멸자에서 마무리 작업을 하도록 구현하는 것이 좋다.

원하는 시점에 소멸자의 호출이 안돼서 삽질했음.

728x90