Bahay Pag-unlad Ano ang koleksyon ng basura (gc)? - kahulugan mula sa techopedia

Ano ang koleksyon ng basura (gc)? - kahulugan mula sa techopedia

Talaan ng mga Nilalaman:

Anonim

Kahulugan - Ano ang kahulugan ng Koleksyon ng Basura (GC)?

Ang koleksyon ng basura (GC) ay isang dinamikong diskarte sa pamamahala ng awtomatikong memorya at magbunton ng laang alokasyon na nagpoproseso at kinikilala ang mga patay na bloke ng memorya at reallocates ang imbakan para magamit muli. Ang pangunahing layunin ng koleksyon ng basura ay upang mabawasan ang mga pagtagas ng memorya.

Ang pagpapatupad ng GC ay nangangailangan ng tatlong pangunahing pamamaraan, tulad ng sumusunod:

  • Mark-and-sweep - Sa proseso kapag naubos ang memorya, hinahanap ng GC ang lahat ng naa-access na memorya at pagkatapos ay muling makuha ang magagamit na memorya.
  • Ang pagbilang ng sanggunian - Ang mga inilaang bagay ay naglalaman ng isang bilang ng sangguniang numero ng sanggunian. Kung zero ang bilang ng memorya, ang bagay ay basura at pagkatapos ay nawasak. Ang napalaya na memorya ay bumalik sa tambak ng memorya.
  • Koleksyon ng kopya - Mayroong dalawang mga partisyon ng memorya. Kung ang unang pagkahati ay puno, hinahanap ng GC ang lahat ng naa-access na mga istruktura ng data at kinopya ang mga ito sa pangalawang pagkahati, pagsisiksik ng memorya pagkatapos ng proseso ng GC at pinapayagan ang patuloy na libreng memorya.

Ang ilang mga wika at platform sa pag-programming na may built-in na GC (halimbawa, Java, Lisp, C # at .Net) na pinamamahalaan ang sarili na mga leaks ng memorya, na nagpapahintulot para sa mas mahusay na programming.

Ipinapaliwanag ng Techopedia ang Basura Collection (GC)

Ang dinamikong pamamaraan ng koleksyon ng basura sa mga awtomatikong pag-alok ng paglalaan ng mga address na pangkaraniwan at magastos na mga pagkakamali na madalas na nagreresulta sa mga depekto ng programa sa mundo kapag hindi natukoy.

Dahil mahirap silang kilalanin at ayusin, magastos ang mga error sa paglalaan. Sa gayon, ang koleksyon ng basura ay isinasaalang-alang ng marami na isang mahalagang katangian ng wika na ginagawang mas madali ang trabaho ng programista na may mas mababang manu-manong pamamahala ng paglalaan ng alokasyon. Gayunpaman, ang GC ay hindi perpekto, at ang mga sumusunod na drawback ay dapat isaalang-alang:

  • Kapag pinalalaya ang memorya, kumokonsumo ang mga mapagkukunan ng computing.
  • Ang proseso ng GC ay hindi mahulaan, na nagreresulta sa pagkalat ng session ng pagkaantala.
  • Kapag ang mga hindi nagamit na sanggunian ng object ay hindi manu-manong itinapon, ang GC ay nagiging sanhi ng pagtulo ng lohikal na memorya.
  • Hindi laging alam ng GC kung kailan magproseso sa loob ng mga virtual na kapaligiran ng memorya ng mga modernong desktop computer.
  • Ang proseso ng GC ay nakikipag-ugnay nang hindi maganda sa mga cache at virtual system ng memorya, na nagreresulta sa mga paghihirap sa pag-tune ng pagganap.
Ang kahulugan na ito ay isinulat sa konteksto ng Pangkalahatang Programming
Ano ang koleksyon ng basura (gc)? - kahulugan mula sa techopedia