likvidáciu

Autor: Lewis Jackson
Dátum Stvorenia: 8 Smieť 2021
Dátum Aktualizácie: 1 V Júli 2024
Anonim
likvidáciu - Technológie
likvidáciu - Technológie

Obsah

Definícia - Čo znamená Dispose?

V prípade C #, dispose je metóda objektu vyvolaná na vykonanie kódu potrebného na vyčistenie a uvoľnenie pamäte a resetovanie nespravovaných prostriedkov, ako sú popisovače súborov a pripojenie k databáze. Dispose zlepšuje výkon a optimalizuje pamäť uvoľňovaním nezvládnuteľných objektov a obmedzených zdrojov, ako sú napríklad úchytky GDI (Graphics Device Interface) používané v aplikáciách s obmedzeným priestorom Windows.

Metóda Dispose, ktorú poskytuje rozhranie IDisposable, implementuje Dispose calls. Vzor likvidácie je určený na včasné a predvídateľné čistenie, prevenciu dočasných únikov pamäte a likvidáciu zdrojov.


Úvod do programu Microsoft Azure a Microsoft Cloud V tejto príručke sa dozviete, o čom všetko je cloud computing a ako vám môže Microsoft Azure pomôcť migrovať a podnikať z cloudu.

Techopedia vysvetľuje Dispose

NET Framework uľahčuje zber odpadu (GC), spravuje pamäť objektov a prostriedky a regeneruje neplatné odkazy na objektovú pamäť vyvolaním Finalize - nedeterministickej metódy. Metóda Dispose riadi životnosť inštancií pamäte objektov a poskytuje explicitné riadenie čistenia pamäte verzus finalizuje implicitné čistenie pamäte. Dispose sa dá vyvolať, aj keď existujú aj iné inštancie pamäťových objektov, zatiaľ čo Finalizácia sa môže vyvolať až po zničení posledného pamäťového objektu.

Pravidlá metódy nakladania sú nasledujúce:

  • Používa sa pre nespravované zdroje vyžadujúce okamžité uvoľnenie po použití.
  • Ak sa funkcia Dispose nezvolá, mala by sa implementovať metóda Finalize.
  • Po zavolaní metódy Dispose sa musí zavolať metóda GC.SuppressFinalize, aby sa odvrátila metóda Finalize a zabránilo sa zbytočnému GC.
  • Výnimky by sa mali zaobchádzať opatrne, ak sa metóda Dispose používa viackrát. Ak sú prostriedky zlikvidované, akákoľvek metóda inštancie môže vyvolať ObjectDisposedException.
  • Objekt s predtým nazývanou metódou Dispose sa nesmie opätovne použiť.
  • Dispose sa odporúča iba na správu natívnych prostriedkov prostriedkov a objektov COM (Object Object Model) vystavených rozhraniu .NET Framework.
  • Likvidácia nemôže byť vyvolaná súčasne z viacerých vlákien, z dôvodu nepredvídateľných výsledkov.
  • Typy hodnôt by sa nemali vytvárať ako jednorazové typy alebo s nespravovanými členmi zdrojov.
  • Pri používaní nespravovaných prostriedkov sa považuje za najlepšiu prax používať zdrojové kódy pomocou príkazu Statement, ktorý automaticky vyvolá metódu Dispose po dokončení kódu objektu.
Táto definícia bola napísaná v konk. C #