Domov Rozvoj Co je odvoz odpadu (gc)? - definice z techopedie

Co je odvoz odpadu (gc)? - definice z techopedie

Obsah:

Anonim

Definice - Co znamená Garbage Collection (GC)?

Sběr odpadu (GC) je dynamický přístup k automatické správě paměti a přidělování haldy, který zpracovává a identifikuje bloky mrtvé paměti a přerozděluje úložiště pro opětovné použití. Hlavním účelem sběru odpadu je omezit úniky paměti.

Implementace GC vyžaduje tři primární přístupy:

  • Mark-and-sweep - Během procesu, kdy dojde paměť, vyhledá GC veškerou dostupnou paměť a poté získá dostupnou paměť.
  • Počítání referencí - Přidělené objekty obsahují referenční počet referenčních čísel. Pokud je počet paměti nula, je objekt odpadky a je zničen. Uvolněná paměť se vrací do hromady paměti.
  • Kolekce kopií - Existují dva oddíly paměti. Je-li první oddíl plný, vyhledá GC všechny dostupné datové struktury a zkopíruje je do druhého oddílu, zhutní paměť po procesu GC a umožní nepřetržitou volnou paměť.

Některé programovací jazyky a platformy s vestavěným GC (např. Java, Lisp, C # a .Net) samospouštějí úniky paměti, což umožňuje efektivnější programování.

Techopedia vysvětluje Garbage Collection (GC)

Dynamický přístup kolekce garbage k automatickému přidělování haldy řeší běžné a nákladné chyby, které často vedou k vadám programu ve skutečném světě, když nejsou detekovány.

Protože je obtížné je identifikovat a opravit, chyby při přidělování jsou nákladné. Sběr odpadu je tedy mnohými považován za nezbytnou jazykovou funkci, která usnadňuje práci programátora díky nižší správě přidělování haldy. GC však není dokonalý a je třeba zvážit následující nevýhody:

  • Při uvolňování paměti spotřebovává GC výpočetní prostředky.
  • Proces GC je nepředvídatelný, což má za následek rozptýlené zpoždění relace.
  • Pokud nepoužívané odkazy na objekty nejsou zlikvidovány ručně, způsobí GC logické nevracení paměti.
  • GC ne vždy ví, kdy zpracovat v prostředích virtuální paměti moderních stolních počítačů.
  • Proces GC špatně interaguje s mezipamětí a systémy virtuální paměti, což má za následek potíže s laděním výkonu.
Tato definice byla napsána v kontextu obecného programování
Co je odvoz odpadu (gc)? - definice z techopedie