Heeft Python een afvalverzamelaar?
Heeft Python een afvalverzamelaar?

Video: Heeft Python een afvalverzamelaar?

Video: Heeft Python een afvalverzamelaar?
Video: Garbage Collection in Python 2024, Mei
Anonim

Vuilnisophaling in Python . Python's geheugentoewijzing en deallocatie-methode is automatisch. De gebruiker doet niet hebben om geheugen vooraf toe te wijzen of ongedaan te maken, vergelijkbaar met het gebruik van dynamische geheugentoewijzing in talen zoals C of C++.

Bovendien, wat is garbage collector in Python?

Het proces waarmee Python periodiek geheugenblokken vrijmaakt en terugwint die niet meer in gebruik zijn, wordt genoemd Vuilnisophaling . De vuilnisman van Python wordt uitgevoerd tijdens de uitvoering van het programma en wordt geactiveerd wanneer de referentietelling van een object nul bereikt.

Weet ook, maakt Python Del geheugen vrij? De reden is dat wanneer een blok is geacht " vrij ", Dat geheugen is niet echt terug vrijgemaakt naar het besturingssysteem. De Python proces houdt het toegewezen en zullen gebruik het later voor nieuwe gegevens. Werkelijk geheugen vrijmaken stuurt het terug naar het besturingssysteem om te gebruiken. Arena's zijn de enige dingen die kan echt bevrijd worden.

Weet ook, wat doet een vuilnisman?

De vuilnisman , of gewoon verzamelaar , pogingen om terug te vorderen afval , of geheugen bezet door objecten die zijn niet meer in gebruik door het programma. Andere bronnen dan geheugen, zoals netwerksockets, databasehandvatten, gebruikersinteractievensters, bestands- en apparaatdescriptors, zijn meestal niet afgehandeld door vuilnisophaling.

Waarom heeft C++ geen garbage collector?

C++ was oorspronkelijk een uitbreiding op C - de keuze was al gemaakt, en het is erg moeilijk om te enten vuilnisophaling op een bestaande taal. C++ heeft geen vuilnisophaler nodig , omdat het heeft Nee afval . In het moderne C++ je gebruikt slimme aanwijzers en daarom hebben Nee afval.

Aanbevolen: