Python 객체의 생명 주기와 메모리
·
[Language] - Python
개요어떤 언어든 마찬가지이지만, 비즈니스 로직을 구현할 때 메모리 관리에 신경 쓰지 않으면 메모리 누수(Memory Leak) 현상이 발생할 수 있다. 이는 시스템 성능 저하로 이어질 수 있으며, 특히 규모가 커질수록 바늘 찾기(needle in haystack)처럼 문제의 원인을 찾기 어려워질 수 있다. 따라서 초기 단계부터 단위 테스트와 함께 메모리 관리에 신경 써야 할 부분이기도 하다.C 언어는 malloc(), free()로 메모리를 직접 관리해야 하지만, Python은 Java처럼 가비지 컬렉터(GC)가 객체의 메모리를 자동으로 수거해주기 때문에 개발자는 비즈니스 로직에 더 집중할 수 있다. 하지만 객체 간 복잡한 참조가 발생할 경우, 개발자가 인지하지 못한 곳에서 객체가 메모리에서 제대로 해제..