Atkritumu savācējs

Autors: Louise Ward
Radīšanas Datums: 5 Februāris 2021
Atjaunināšanas Datums: 1 Jūlijs 2024
Anonim
Vidzemē runā rubrika: Atkritumu šķirošana
Video: Vidzemē runā rubrika: Atkritumu šķirošana

Saturs

Definīcija - ko nozīmē atkritumu savācējs?

Atkritumu savācējs ir programmatūras gabals, kas veic automātisku atmiņas pārvaldību. Tās uzdevums ir atbrīvot neizmantoto atmiņu un nodrošināt, ka tā joprojām netiek atbrīvota, kamēr tā joprojām tiek izmantota. Dažās valodās, piemēram, Java un .NET valodās, ir automātiska atkritumu savākšana, savukārt citās, piemēram, C / C ++, programmētājam ir nepieciešams manuāli pārvaldīt atmiņu.


Ievads Microsoft Azure un Microsoft Cloud | Šajā rokasgrāmatā jūs uzzināsit, kas ir mākonis skaitļošana un kā Microsoft Azure var palīdzēt jums migrēt un vadīt savu biznesu no mākoņa.

Techopedia skaidro atkritumu savācējs

Atkritumu savākšanu pirmo reizi ieviesa Lisp veidotājs Džons Makartijs, lai atvieglotu manuālo atmiņas pārvaldību, strādājot ar Lisp valodu.

Trīs galvenās metodes, kuras atkritumu savācējs izmanto, lai veiktu automātisku atmiņas pārvaldību, ir šādas:

  • Atsauces skaitīšana - atsauce uz katru objektu tiek skaitīta, izmantojot skaitītāja mainīgo. Kad skaitītājs sasniedz nulli, tas norāda, ka priekšmets vairs nav vajadzīgs un tādējādi tiek pārstrādāts.
  • Atzīmēt un slaucīt - visos sasniedzamos objektus rekursīvi šķērso visos datu reģionos, un sasniedzamie objekti tiek marķēti. Pēc tam nemarķētie objekti tiek pārstrādāti.
  • Apturēt un kopēt - atmiņas kaudze ir sadalīta divās daļās: sadaļā, kurā ir objekti, un tukšajā sadaļā, kur objekti tiek pārsūtīti (kopēti), ja tiek konstatēts, ka tie ir atzīmēti. Pirmajā sadaļā neatzīmētie objekti tiek pārstrādāti, to iztukšojot.

Kad ir atbrīvots rādītājam / objektam piešķirtais atmiņas bloks, rādītājam / objektam jābūt atiestatītam uz nulles vērtību; pretējā gadījumā tas karājas, t.i., norāda uz nederīgu atmiņas bloku.


Atkritumu savākšana palīdz samazināt kļūdas un drošības riskus, ko rada pakārtošās norādes un atmiņas noplūdes problēmas.

Atkritumu savācēja izmantošanas trūkumi ietver papildu izmaksas resursiem un veiktspēju. Atkritumu savācēja darbība var arī palēnināt sistēmu un tādējādi samazināt tās veiktspēju.