hävitä

Kirjoittaja: Lewis Jackson
Luomispäivä: 8 Saattaa 2021
Päivityspäivä: 1 Heinäkuu 2024
Anonim
hävitä - Tekniikka
hävitä - Tekniikka

Sisältö

Määritelmä - mitä Dispose tarkoittaa?

C # -konferenssissa dispose on esinemenetelmä, jota kutsutaan suorittamaan muistin puhdistamiseen tarvittava koodi ja vapauttamaan ja palauttamaan hallitsemattomat resurssit, kuten tiedostokahvat ja tietokantayhteydet. Dispose parantaa suorituskykyä ja optimoi muistia vapauttamalla hallitsemattomia objekteja ja niukkoja resursseja, kuten Graphics Device Interface (GDI) -kahvoja, joita käytetään sovelluksissa, joissa Windows-tila on rajoitettu.

Henkilökohtaisen käyttöliittymän tarjoama hävitysmenetelmä toteuttaa hävityspuhelut. Hävitysmalli on suunniteltu oikea-aikaiseen ja ennustettavaan puhdistukseen, väliaikaisten muistivuotojen estämiseen ja resurssien hävittämiseen.


Johdanto Microsoft Azureen ja Microsoft Cloud | Tämän oppaan läpi opit mitä pilvipalvelussa on kyse ja kuinka Microsoft Azure voi auttaa sinua siirtämään ja johtamaan yritystä pilvestä.

Techopedia selittää hävittää

.NET-kehys helpottaa roskien keräämistä (GC), hallitsee objektimuistia ja resursseja ja palauttaa kelpaamattomat objektimuistiviitteet ottamalla käyttöön viimeistely - ei-deterministinen menetelmä. Hävitysmenetelmä hallitsee objektimuistin esiintymien elinkaarta ja tarjoaa nimenomaisen muistin puhdistuksen hallinnan, verrattuna Viimeistelee implisiittisen muistin puhdistuksen. Hävittämiseen voidaan vedota myös silloin, kun muita muistiobjektiesimerkkejä on, kun taas Viimeistelyyn voidaan vedota vasta viimeisen muistiobjektin tuhoamisen jälkeen.

Hävitysmenetelmän säännöt ovat seuraavat:


  • Käytetään hallitsemattomiin resursseihin, jotka vaativat välittömän vapauttamisen käytön jälkeen.
  • Jos hävittämistä ei kutsuta, viimeistelymenetelmä tulisi ottaa käyttöön.
  • Kun hälytysmenetelmä on soitettu, GC.SuppressFinalize -menetelmä on kutsuttava viimeistelymenetelmän välttämiseksi ja tarpeettoman GC: n välttämiseksi.
  • Poikkeuksia on käsiteltävä huolellisesti, jos hävitysmenetelmään vedotaan useammin kuin kerran. Jos resursseja luovutetaan, mikä tahansa ilmentymämenetelmä voi heittää ObjectDisposedException.
  • Objektia, jolla on aiemmin kutsuttu hävitysmenetelmä, ei saa käyttää uudelleen.
  • Hävittämistä suositellaan vain natiivien resurssiobjektien ja Component Object Model (COM) -objektien hallintaa varten. NET Frameworkille altistuneina.
  • Jätteeseen ei voida vedota samanaikaisesti useista säikeistä odottamattomien tulosten takia.
  • Arvotyyppejä ei tule luoda kertakäyttöisiksi tyypeiksi tai hallitsemattomien resurssi jäsenten kanssa.
  • Kun käytetään hallitsemattomia resursseja, parhaaksi käytännöksi pidetään lähdekoodien käyttämistä lauseketta käyttämällä, joka automaattisesti kutsuu esineet Dispose -menetelmään objektikoodin suorittamisen jälkeen.
Tämä määritelmä kirjoitettiin C #: n con