Logo sl.boatexistence.com

Ali dokončanje klica odstrani?

Kazalo:

Ali dokončanje klica odstrani?
Ali dokončanje klica odstrani?

Video: Ali dokončanje klica odstrani?

Video: Ali dokončanje klica odstrani?
Video: Load your page faster: remove unused code 2024, Maj
Anonim

Če imate izvorne vire, implementirate tako Dispose kot Finalize in oba pokličete skupno metodo, ki sprosti izvorne vire. Ti idiomi so običajno združeni z zasebno metodo Dispose (razpolaganje z bool), ki klice Dispose z true in klice Finalize z false.

Kdaj uporabiti finalize proti Dispose?

Metoda dispose() se uporablja za sprostitev neupravljanih virov, kadar koli je priklicana. Metoda finalize() se uporablja za sprostitev neupravljanih virov, preden se objekt uniči. Metodo dispose() je treba implementirati vsakič, ko obstaja metoda close().

Kakšna je razlika med metodama Dispose in Finalize?

Glavna razlika med dispose in finalize je da mora uporabnik metodo dispose izrecno priklicati, medtem ko metodo finalize pokliče zbiralnik smeti, tik pred predmet je uničen.

Ali uporaba klica Dispose?

Izjava using zagotavlja, da se Dispose pokliče, tudi če pride do izjeme, ko kličete metode na objektu. Enak rezultat lahko dosežete tako, da objekt postavite v blok try in nato pokličete Dispose v blok finally; pravzaprav tako stavek using prevede prevajalnik.

Ali naj pokličem Dispose C?

4 odgovori. Pravilo: če razred implementira IDisposable, morate vedno poklicati metodo Dispose, takoj ko končate z uporabo tega vira Še bolje, da jo zavijete v stavek using, da zagotovite, da bo metoda Dispose poklicati tudi, če je vržena izjema: z uporabo (var reader=conn.

Priporočena: