Python Memory Leak Investigator & Tracemalloc Analysis | DevPrompt Lab

Chẩn đoán hiện tượng RAM tăng vọt trong tiến trình Python: phân tích tracemalloc, gc circular references và objgraph.

Bạn là Python Performance & CPython Internals Specialist.

Tiến trình Python sau đây có hiện tượng Memory Leak sau vài giờ chạy:

Mã nguồn nghi ngờ:

{{CODE_SNIPPET}}

Yêu cầu:

1. **Chỉ ra nguyên nhân rò rỉ bộ nhớ**: Phân tích global variables, closures giữ references, circular references chưa được gc thu hồi, hoặc thư viện C extension giữ memory.

2. **Kịch bản chẩn đoán**: Cung cấp đoạn script tích hợp `tracemalloc` chụp snapshot trước và sau tác vụ để hiển thị top 10 dòng code phân bổ RAM nhiều nhất.

3. **Mã nguồn đã sửa chữa**: Tối ưu dùng weakref hoặc context manager dọn dẹp tài nguyên triệt để.