Ero hävittämisen () ja viimeistelyn () välillä

Avainero - hävitä () vs. viimeistelynilmaisulaitteen ()
 

avainero hävitä () ja viimeistele () välillä on se Ohjelmoijan on nimenomaisesti kutsuttava hävittämään (), kun taas roskien kerääjä viimeistelee () ennen kohteen tuhoamista.

Dispose () on tapa sulkea tai vapauttaa hallitsemattomat resurssit, kuten tiedostot, objektin hallussa olevat virrat. Viimeistely on menetelmä suorittaa puhdistustoimenpiteet nykyisen objektin hallitsemattomille resursseille ennen objektin tuhoamista.

SISÄLLYS

1. Yleiskatsaus ja keskeiset erot
2. mitä on hävittää ()
3. Mikä on viimeistely ()
4. Yhdenmukaisuudet hävittämisen () ja viimeistelyn () välillä
5. Vertailu rinnakkain - hävitä () vs viimeistele () taulukkomuodossa
6. Yhteenveto

Mitä on hävittää ()?

Yksi .NET-kehyksen tärkeimmistä eduista on, että se tarjoaa automaattisen roskien keräyksen. Se vapauttaa automaattisesti käyttämättömien esineiden muistin. Ohjelmointikielissä, kuten C ja C ++, ohjelmoijan on itse käsiteltävä muistinhallintaa. Mutta sellaisilla kielillä kuin. NET-kehykseen rakennettu C # tarjoaa roskakorin. Se auttaa hallitsemaan muistia. Sitä ei voida käyttää hallitsemattomien muistiresurssien vapauttamiseen. Dispose () -menetelmää voidaan käyttää tämän tehtävän saavuttamiseen.

Dispose () -menetelmää voidaan käyttää resurssien, kuten tietokantayhteyksien, tiedostojen käsittelijöiden, vapauttamiseen. Tätä menetelmää ei kutsuta automaattisesti. Siksi ohjelmoijan tulisi ottaa tämä menetelmä käyttöön. Heti kun tämä menetelmä on käynnistetty, tietyn hallitsemattoman resurssin muisti vapautetaan. Tämä menetelmä ilmoitetaan käyttöliittymässä tunnistettavissa.

Mikä on viimeistely ()?

Viimeistelymenetelmää kutsuu vain jätteenkeräin, kun viittausta esineeseen ei käytetä enää. Tätä menetelmää kutsutaan juuri ennen objektin tuhoamista. Tämä menetelmä toteutetaan tuhoajan avulla. Viimeistele menetelmä määritetään luokassa java.lang.object. Tämä menetelmä julistetaan suojatuksi. Sitä ei julisteta julkiseksi, jotta vältetään pääsy muille luokille. Kaiken kaikkiaan viimeistelymenetelmä voi minimoida ohjelman suorituskyvyn, koska se ei vapauta muistia heti.

Mikä on samankaltainen hävittää () ja viimeistellä ()?

  • Sekä dispose () - että finalize () -toimintoa voidaan käyttää vapauttamaan hallitsemattomalle resurssille varattu muisti.

Mikä on ero hävittää () ja viimeistellä ()?

hävitä () vs viimeistele ()

Dispose () on tapa sulkea tai vapauttaa hallitsemattomat resurssit, kuten tiedostot, objektin hallussa olevat virrat. Viimeistely on menetelmä, jolla suoritetaan siivoustoimenpiteet nykyisen objektin hallitsemattomista resursseista ennen objektin tuhoamista.
 Tavoite
Hävitysmenetelmää käytetään hallitsemattomien resurssien vapauttamiseen, kun niihin kutsutaan. Viimeistelymenetelmää käytetään hallitsemattomien resurssien vapauttamiseen ennen objektin tuhoamista.
Määritelty rajapinta tai luokka
Hävitys () määritetään käyttöliittymässä, joka on kertakäyttöinen. Viimeistely () määritetään luokassa java.lang.object.
 Kutsu menetelmä
Ohjelmoija vetoaa hävitysmenetelmään. Jätehuoltaja vetoaa viimeistelymenetelmään.
Access suunnittelijoille
Hävitysmenetelmä on julkinen. Viimeistele menetelmä on suojattu.
Nopeus
Hävitysmenetelmä otetaan käyttöön välittömästi. Viimeistelymenetelmää kutsutaan hitaasti.
Esitys
Ohje ei minimoi ohjelman suorituskykyä. Viimeistele menetelmä voi minimoida ohjelman suorituskyvyn.

Yhteenveto - hävitä () vs. viimeistelynilmaisulaitteen ()

Tässä artikkelissa käsiteltiin eroa C-menetelmässä olevien menetelmien hävittämisen ja viimeistelyn välillä. Ero dispose (): n ja finalize (): n välillä on se, että ohjelmoija on nimenomaisesti vedonnut dispose (): iin, kun taas jätteenkeräjä kutsuu viimeistelemään () ennen esineen tuhoamista.

Viite:

1.Toteuttaminen Viimeistele ja hävitä hallitsemattomat resurssit. Saatavilla täältä  
2.Sharma, Nitya. “Takaisin perusteisiin - hävitä V-tuotteet viimeistelynä.” C # Kulma. Saatavilla täältä  

Kuvan kohteliaisuus:

1.'Csharp Logo'By Andres15alvarez - Oma työ, (CC BY-SA 4.0) Commons-sivuston kautta