Különbség a selejtezés () és a véglegesítés () között

Fő különbség - ártalmatlanítsa () vs véglegesítése ()
 

Az kulcs különbség a dispose () és finalize () között ez az a dispose () -ot a programozónak kifejezetten meg kell hívnia, míg a véglegesítést () a hulladékgyűjtő hívja meg, mielőtt elpusztítja az objektumot.

A dispose () egy módszer nem kezelt erőforrások, például fájlok, objektumok birtokában lévő adatfolyamok bezárására vagy felszabadítására. A véglegesítés egy módszer az aktuális objektum nem kezelt erőforrásain végzett tisztítási műveletek végrehajtására az objektum megsemmisítése előtt.

TARTALOMJEGYZÉK

1. Áttekintés és a legfontosabb különbség
2. mi a rendelkezés ()
3. Mi a véglegesítés ()
4. hasonlóságok a selejtezés () és a véglegesítés () között
5. Összehasonlítás egymással - dobja el () vs véglegesítse () táblázatos formában
6. Összegzés

Mi a rendelkezés ()?

A .NET-keretrendszer egyik legfontosabb előnye, hogy automatikus szemétgyűjtést biztosít. Ez automatikusan felszabadítja a nem használt objektumok memóriáját. A C és C ++ programozási nyelveknél a programozónak önmagában kell kezelnie a memóriakezelést. De olyan nyelveken, mint a C #, amelyre a .NET keretrendszer épül, a hulladékgyűjtő szolgál. Segít a memória kezelésében. Nem használható fel a nem kezelt memória erőforrások felszabadítására. A dispose () módszer felhasználható ennek a feladatnak a megvalósítására.

A dispose () módszer felhasználható erőforrások, például adatbázis-kapcsolatok, fájlkezelők stb. Felszabadítására. Ezt a módszert nem hívják meg automatikusan. Ezért a programozónak végre kell hajtania ezt a módszert. Amint ezt a módszert meghívják, az adott nem kezelt erőforrás memóriája felszabadul. Ezt a módszert az interfész azonosítja.

Mi a véglegesítés ()?

A véglegesítési módszert csak a hulladékgyűjtő hívja meg, ha az objektumra való hivatkozást nem használják tovább. Ezt a módszert közvetlenül az objektum megsemmisítése előtt hívják. Ezt a módszert a pusztító segítségével hajtjuk végre. A véglegesítési módszert a java.lang.object osztály határozza meg. Ezt a módszert védettnek nyilvánítják. Nem nyilvánosságra hozzák, hogy elkerüljék a többi osztály bejutását. Összességében a véglegesítési módszer minimalizálhatja a program teljesítményét, mivel nem szabadítja fel azonnal a memóriát.

Mi a hasonlóság a dispose () és finalize () között?

  • A dispose () és a finalize () egyaránt felszabadíthatók a nem kezelt erőforrások számára elkülönített memóriához.

Mi a különbség a rendelkezés () és a véglegesítés () között?

dispose () vs finalize ()

A dispose () egy módszer nem kezelt erőforrások, például fájlok, objektumok birtokában lévő adatfolyamok bezárására vagy felszabadítására. A véglegesítés egy módszer az aktuális objektum nem kezelt erőforrásainak tisztítására, mielőtt az objektum megsemmisül.
 Célkitűzés
A megsemmisítési módszer a nem kezelt erőforrások felszabadítására szolgál, amikor meghívják őket. A véglegesítés módszerével felszabadítják a nem kezelt erőforrásokat az objektum megsemmisítése előtt.
Meghatározott interfész vagy osztály
A dispose () meghatározása az interfész azonosítható felületén történik. A véglegesítést () a java.lang.object osztály határozza meg.
 Meghívó módszer
A programozó meghívja az ártalmatlanítási módszert. A véglegesítési módszert a hulladékgyűjtő hívja be.
Access Specifier
A ártalmatlanítási módszer nyilvános. A véglegesítési módszer védett.
Sebesség
Az ártalmatlanítási módszert azonnal meghívják. A véglegesítési módszert lassan hívják meg.
Teljesítmény
A megsemmisítés nem minimalizálja a program teljesítményét. A véglegesítési módszer minimalizálhatja a program teljesítményét.

Összegzés - ártalmatlanítani () vs véglegesítése ()

Ez a cikk tárgyalta a különbséget a diszpozíció és a véglegesítés módszerei között a C # -ben. A dispose () és a finalize () közötti különbség az, hogy a dispose () -et a programozónak kifejezetten meg kell hívnia, míg a finalize () -et a szemetesgyűjtő hívja meg, mielőtt elpusztítja az objektumot.

Referencia:

1.Végrehajtás és a nem kezelt erőforrások tisztításának végrehajtása. Itt érhető el  
2.Sharma, Nitya. “Vissza az alapokhoz - selejtezze le a véglegesítést.” C # sarok. Itt érhető el  

Kép jóvoltából:

1.'Csharp Logo'By Andres15alvarez - Saját munka, (CC BY-SA 4.0) a Commons Wikimedia-on keresztül