Ruby ले स्वचलित रूपमा ग्यारबेज कलेक्टर (GC) को माध्यमबाट मेमोरी व्यवस्थापन गर्छ जसले अब सन्दर्भित नहुने वस्तुहरूलाई मुक्त गर्छ। आधुनिक Ruby (MRI) ले पीढीगत, वृद्धिशील mark-and-sweep कलेक्टर कम्प्याक्सन सहितको प्रयोग गर्छ। यसलाई बुझ्नु कार्यप्रदर्शन र लामो समय चलिरहेका एप्लिकेसनहरूमा मेमोरी समस्याहरू निदान गर्न मद्दत गर्छ।
स्वचलित ग्यारबेज कलेक्सन
Ruby allocates objects on the heap; the GC reclaims those that are no longer REACHABLE
(referenced). You never free memory manually.
Modern MRI GC characteristics:
✓ Mark-and-sweep — marks reachable objects (from roots), sweeps unreachable ones
✓ Generational (since Ruby 2.1) — new objects collected often, old ones rarely
(based on "most objects die young")
✓ Incremental — spreads GC work to reduce pause times
✓ Compacting (GC.compact, Ruby 2.7+) — reduces memory fragmentation
