Vai likvidēšana tiek saukta automātiski?
Vai likvidēšana tiek saukta automātiski?

Video: Vai likvidēšana tiek saukta automātiski?

Video: Vai likvidēšana tiek saukta automātiski?
Video: FotoFinder – precīzai ādas jaunveidojumu diagnostikai un automātiskai salīdzināšanai 2024, Maijs
Anonim

Izmetiet () nebūs izsaukts automātiski . Ja būs pabeigtājs, tas būs izsaukts automātiski . IDisposable ieviešana nodrošina veidu, kā jūsu klases lietotāji var agrāk atbrīvot resursus, nevis gaidīt atkritumu savācēju. Ja klases lietotājs aicina Izmest () tīrīšana notiek tieši.

Vai tos izmest atkritumu savācējs aicina?

Drošā roktura noslēdzējs ir sauca automātiski, ko veic atkritumu savācējs ja tā Izmetiet metode nav sauca . Pabeigšanas metode. Pabeigšana ļauj nedeterministiski atbrīvot nepārvaldītus resursus, ja kāda veida patērētājam tas neizdodas zvanu ID vienreizējās lietošanas. Izmetiet uz atbrīvoties no tiem deterministiski.

Pēc tam jautājums ir, kad atsavināšanas metode tiek izsaukta C#? C# | CharEnumerator. Izmetiet () Metode . Šis metodi tiek izmantots, lai atbrīvotu visus resursus, ko izmanto pašreizējā CharEnumerator klases instance. The Izmetiet () metodi atstāj CharEnumerator neizmantojamā stāvoklī.

Pēc tam var arī jautāt, vai pabeidz zvanu Atbrīvoties?

Pabeigt Pret Izmetiet Tas nav likumīgi zvanu nepārprotami pabeigts. Jūsu Pabeigt () metodi izsauks atkritumu savācējs. Ja jūs darīt apstrādājiet vērtīgus nepārvaldītus resursus (piemēram, failu rokturus), kurus vēlaties aizvērt, un atbrīvoties cik ātri vien iespējams, jums vajadzētu ieviest IDisposable saskarni.

Kāda ir atšķirība starp Pabeigšanas () un Apglabāšanas () metodēm?

The metodes pabeigšana () izsauc atkritumu savācējs. Metode likvidēt () tiek izmantots, lai atbrīvotu nepārvaldītus resursus ikreiz, kad tas tiek izsaukts. Metodes pabeigšana () tiek izmantots, lai atbrīvotu nepārvaldītus resursus pirms objekta iznīcināšanas. The metode atbrīvoties () ir jāievieš ikreiz, kad notiek aizvēršana () metodi.

Ieteicams: