Garbage Collection سازوکاری در Runtime است که آبجکت‌های دیگر قابل دسترسی را شناسایی و حافظه آن‌ها را برای استفاده مجدد آزاد می‌کند.

یک سناریوی واقعی

در Java و JavaScript بخش زیادی از مدیریت حافظه به صورت خودکار انجام می‌شود. بااین‌حال، نگه داشتن Reference غیرضروری می‌تواند مانع آزاد شدن آبجکت شود.

وجود Garbage Collector به معنی نبود Memory Leak یا توقف‌های کوتاه هنگام جمع‌آوری نیست.

GC و مدیریت حافظه

Garbage Collector حافظه آبجکت‌های دیگر غیرقابل دسترس را بازیابی می‌کند. وجود GC به معنی ناممکن بودن Memory Leak نیست, ارجاع‌های نگهداری‌شده ناخواسته همچنان مصرف حافظه را زیاد می‌کنند.