„Szerkesztő:Mr Steve/Garbage Collection” változatai közötti eltérés

Tartalom törölve Tartalom hozzáadva
a →‎Alapok: C-link javítása
26. sor:
===Egy objektum elérhetősége===
Egy elérhető objektumot úgy definiálhatunk, mint egy program futása közben létrejött változót, amelyet elérhetünk direkt módon, vagy egy másik objektumon keresztül. Ezen a módon kétféle objektumot különbözetünk meg:
*Objektumok, amelyekről feltételezhetjük, hogy elérhetőek. Tipikusan azok az elemek tartoznak ide, amelyekre a "call stack(?magyarul hívó verem?<!-- igen, erre van valami frappáns szó, de csakazértse jut eszembe... pedig a stack unwindingnál használta a tanárbácsi azt a szépet -->)" hivatkozik (azaz minden lokális változó és paraméter egy függvényben), illetve minden globális változó.
*Minden olyan objektum, amelyre egy másik szintén elérhető objektum hivatkozik (azazformálisan az elérhetőség egy tranzitív lezárt<!-- (sztem ezt fontos átemelni az angolból, a matekosok hamarabb megértik így ;)) --> ).
Ez a megközelítés, nem teljesen optimális, mivel azután, hogy egy objektumra nincs többé szükség még sok idő telhet el, mire kikerül az adott hatókörből.
<!-- EzértItt nincs következés az angolban se, és logikailag sem -->
Sokszor különbséget teszünk ''szintaktikai szemét'' (amikor a program igazából soha nem fér hozzá az objektumhoz) és ''szemantikai szemét'' (amiazok, azokraamiket aztöbbé objektumokranem vonatkozik,használ amelyeka nincsenek használatbanprogram) között:
 
<pre>