Čo je zberač odpadu a ako funguje v Pythone?
sobes.tech AI
Odpoveď od AI
Zberač smeti (Garbage Collector) v Pythone je mehanizem za avtomatsko upravljanje pomnilnikom, ki sprosti pomnilnik, ki ga zasedajo objekti, ki jih program več ne uporablja.
Python za to uporablja več metod:
-
Števec referenc (reference counting) — vsak objekt ima števec referenc, ki se poveča ob ustvarjanju nove reference na objekt in zmanjša, ko je referenca odstranjena. Ko števec doseže nič, se objekt takoj odstrani.
-
Zbiralnik ciklov — štetje referenc ne more sprostiti objektov, ki se medsebojno sklicujejo (cikli). Za takšne primere Python sproži dodatnega zbiralnika ciklov, ki periodično išče in odstranjuje takšne cikle.
Na ta način zbiralnik smeti pomaga preprečevati uhajanje pomnilnika in olajša programerju ročno upravljanje pomnilnika.