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 để.