Garbage Collection یک جزء مهم در زبان های برنامه نویسی مدیریت شده، خودکار سازی مدیریت حافظه برای بهبود بهره وری توسعه دهنده و ایمنی برنامه است.این شامل شناسایی و بازیابی حافظه است که دیگر در استفاده نیست، جلوگیری از نشت حافظه و بهینه سازی استفاده از منابع.

مجموعه Garbage Collection

بهره وری جمع آوری زباله بستگی به محاسبات مختلف، از جمله فرکانس چرخه جمع آوری و مقدار حافظه برای بازیابی دارد.این محاسبات کمک می کند تا زمان بهینه برای جمع آوری برای به حداقل رساندن تاثیر عملکرد را تعیین کند.

معیارهای کلیدی شامل اندازه توده، نرخ تخصیص شی و طول عمر اشیاء است. برآورد دقیق از این عوامل جمع کننده زباله را قادر می سازد به طور موثر عمل کند بدون اینکه باعث ایجاد وقفه های قابل توجهی در اجرای برنامه شود.

طراحی ذهنیت

طراحی یک جمع آوری زباله شامل متعادل کردن از طریقput، مکث زمان و سربار حافظه است الگوریتم های مختلف مانند علامت و یا جمع آوری نسل، بر اساس الزامات درخواست انتخاب می شوند.

عوامل موثر بر طراحی شامل الگوهای استفاده از حافظه برنامه، محدودیت های زمان واقعی و معماری سخت افزار است، اطمینان حاصل می کند که جمع آوری زباله مانع عملکرد کلی سیستم نمی شود.

انواع الگوریتم های Garbage Collection

  • مارک و-Sweep
  • مرجع شمارش
  • مجموعه نسلی
  • مجموعه Incremental Collection