Automatic garbage collection เป็นหนึ่งในคุณสมบัติสำคัญของ Python กลไก Garbage collector พยายามเรียกคืนหน่วยความจำที่ถูกครอบครองโดยอ็อบเจกต์ที่ไม่ได้ถูกใช้งานโดยโปรแกรมอีกต่อไป
Python ใช้กลไก reference counting สำหรับ garbage collection Python interpreter นับจำนวนครั้งที่อ็อบเจกต์ถูกอ้างอิงโดยอ็อบเจกต์อื่น เมื่อ reference ไปยังอ็อบเจกต์ถูกลบ จำนวนนับสำหรับอ็อบเจกต์จะลดลง เมื่อ reference count กลายเป็นศูนย์ หน่วยความจำของอ็อบเจกต์จะถูกเรียกคืน
ปกติกลไกนี้ทำงานอัตโนมัติ อย่างไรก็ตาม สามารถทำได้ตั้งใจหากสถานการณ์บางอย่างเกิดขึ้นในโปรแกรม โมดูล 'gc' กำหนด garbage collection interface ฟังก์ชันต่อไปนี้ถูกกำหนดในโมดูล 'gc'
| enable() |
เปิดใช้งาน automatic garbage collection อัตโนมัติ |
| disable() |
ปิดใช้งาน automatic garbage collection |
| isenabled() |
คืนค่า true หาก automatic collection เปิดใช้งาน |
| collect() |
โดยไม่มีอาร์กิวเมนต์ รัน full collection อาร์กิวเมนต์ integer ทางเลือกระบุ generation ที่จะ collect (จาก 0 ถึง 2) ValueError จะถูกยกขึ้นหาก generation number ไม่ถูกต้อง จำนวน unreachable objects ที่พบจะถูกคืนค่า |
| set_threshold() |
ตั้งค่า garbage collection thresholds (ความถี่ในการ collect) |
| get_threshold() |
คืนค่า collection thresholds ปัจจุบันเป็น tuple |
| callbacks |
ลิสต์ของ callbacks ที่จะถูกเรียกโดย garbage collector ก่อนและหลัง collection |