Blir ferdigstillelse av samtalen bort?

Innholdsfortegnelse:

Blir ferdigstillelse av samtalen bort?
Blir ferdigstillelse av samtalen bort?

Video: Blir ferdigstillelse av samtalen bort?

Video: Blir ferdigstillelse av samtalen bort?
Video: Куликовская Битва. Литература в основе официальных доказательств. 2024, November
Anonim

Hvis du har native ressurser, implementerer du både Dispose og Finalize, og begge kaller en vanlig metode som frigjør de native ressursene. Disse idiomene kombineres vanligvis gjennom en privat Dispose(bool disposing)-metode, som Dispose calls with true, og finalize calls with false.

Når skal man bruke sluttføre vs. Disponere?

Method dispose() brukes til å frigjøre uadministrerte ressurser hver gang den påkalles. Metoden finalize() brukes til å frigjøre uadministrerte ressurser før objektet blir ødelagt. Metoden dispose() skal implementeres når det er en close()-metode.

Hva er forskjellen mellom Disponer og Finalize-metodene?

Hovedforskjellen mellom avhending og ferdigstillelse er at avhendingsmetoden må eksplisitt påberopes av brukeren, mens sluttbehandlingsmetoden påkalles av søppelsamleren, like før objektet er ødelagt.

Bruker samtale Dispose?

using-setningen sikrer at Dispose kalles selv om et unntak oppstår mens du kaller metoder på objektet. Du kan oppnå samme resultat ved å sette objektet i en prøveblokk og deretter ringe Dispose in a finally block; faktisk er det slik brukssetningen oversettes av kompilatoren.

Skal jeg ringe Dispose C?

4 svar. Tommelfingerregel: hvis en klasse implementerer IDisposable, bør du alltid kalle Dispose-metoden så snart du er ferdig med å bruke denne ressursen Det er enda bedre å pakke den inn i en brukersetning for å sikre at Dispose-metoden vil kalles selv om et unntak blir kastet: ved å bruke (var reader=conn.

Anbefalt: