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.
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
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.
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.
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. |
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.
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
1.'Csharp Logo'By Andres15alvarez - Saját munka, (CC BY-SA 4.0) a Commons Wikimedia-on keresztül