Het Python 'n vullisverwyderaar?
Het Python 'n vullisverwyderaar?

Video: Het Python 'n vullisverwyderaar?

Video: Het Python 'n vullisverwyderaar?
Video: python is removing the GIL! (PEP 703) (advanced) anthony explains #550 2024, Mei
Anonim

Vullisversameling in Python . Die van Python geheue toekenning en deallokasie metode is outomaties. Die gebruiker doen nie het om geheue vooraf toe te ken of te deallokeer soortgelyk aan die gebruik van dinamiese geheuetoewysing in tale soos C of C++.

Verder, wat is vullisverwyderaar in Python?

Die proses waardeur Python van tyd tot tyd bevry en herwin blokke geheue wat nie meer in gebruik is nie, word genoem Vullisversameling . Python se vullisverwyderaar loop tydens programuitvoering en word geaktiveer wanneer 'n voorwerp se verwysingtelling nul bereik.

Weet ook, maak Python Del geheue vry? Die rede is dat wanneer 'n blok is geag " vry ", daardie geheue is nie eintlik terug na die bedryfstelsel vrygestel nie. Die Python proses hou dit toegewys en sal gebruik dit later vir nuwe data. Voorwaar geheue vry te maak stuur dit terug na die bedryfstelsel om te gebruik. Arenas is die enigste dinge wat kan waarlik bevry word.

Weet ook, wat doen vullisverwyderaar?

Die vullis versamelaar , of net versamelaar , probeer om terug te eis vullis , of geheue wat beset word deur voorwerpe wat is word nie meer deur die program gebruik nie. Ander hulpbronne as geheue, soos netwerksokke, databasishandvatsels, gebruikersinteraksievensters, lêer- en toestelbeskrywings, is nie tipies hanteer word deur vullisversameling.

Hoekom het C++ nie 'n vullisverwyderaar nie?

C++ was oorspronklik 'n uitbreiding na C - die keuse was reeds gemaak, en dit is baie moeilik om te ent vullisversameling op 'n bestaande taal. C++ het nie 'n vullisverwyderaar nodig nie , omdat dit het geen vullis . In moderne C++ jy gebruik slim wysers en daarom het geen vullis.

Aanbeveel: