Logo hr.boatexistence.com

Razlaže li finalizirani poziv?

Sadržaj:

Razlaže li finalizirani poziv?
Razlaže li finalizirani poziv?

Video: Razlaže li finalizirani poziv?

Video: Razlaže li finalizirani poziv?
Video: Элиф | Эпизод 308 | смотреть с русский субтитрами 2024, Srpanj
Anonim

Ako držite izvorne resurse, implementirate i Dispose i Finalize, i oboje pozivate zajedničku metodu koja oslobađa izvorne resurse. Ovi se idiomi obično kombiniraju kroz privatnu metodu Dispose (odlaganje bool), koju Dispose poziva s true, a Finalize pozive s false.

Kada koristiti finalize vs Dispose?

Metoda dispose() koristi se za oslobađanje neupravljanih resursa kad god se pozove. Metoda finalize() se koristi za oslobađanje neupravljanih resursa prije nego što se objekt uništi. Metoda dispose() treba se implementirati kad god postoji metoda close().

Koja je razlika između metoda Dispose i Finalize?

Glavna razlika između dispose i finalize je što korisnik mora eksplicitno pozvati metodu dispose dok metodu finalize poziva sakupljač smeća, neposredno prije objekt je uništen.

Da li korištenje poziva Dispose?

Izjava using osigurava da se Dispose pozove čak i ako se dogodi iznimka dok pozivate metode na objektu. Isti rezultat možete postići stavljanjem objekta unutar bloka try, a zatim pozivom Dispose u blok finally; zapravo, ovo je način na koji prevodilac using naredbu prevodi.

Trebam li nazvati Dispose C?

4 odgovora. Opće pravilo: ako klasa implementira IDisposable, uvijek biste trebali pozvati metodu Dispose čim završite s korištenjem ovog resursa Još je bolje zamotati je u naredbu using kako biste bili sigurni da će metoda Dispose biti pozvan čak i ako se izbaci iznimka: koristeći (var reader=conn.

Preporučeni: