De nyckelskillnad mellan kassera () och slutföra () är det kassera () måste uttryckligen åberopas av programmeraren medan slutförandet () påkallas av sopsamlare innan du förstör objektet.
Disponeringen () är en metod för att stänga eller släppa omanagda resurser som filer, strömmar som innehas av ett objekt. Slutförandet är en metod för att utföra renoperationer på omanagda resurser som hålls av det aktuella objektet innan objektet förstörs.
1. Översikt och nyckelskillnad
2. Vad är bortskaffande ()
3. Vad slutfördes ()
4. Likheter mellan dispose () och slutföra ()
5. Side vid sida Jämförelse - kassera () vs slutföra () i tabellform
6. Sammanfattning
En av de viktigaste fördelarna med .NET-ramverket är att det ger automatisk skräpsamling. Det släpper automatiskt minnet av objekten som inte används. I programmeringsspråk som C och C ++, måste programmeraren hantera minneshantering på egen hand. Men på språk som C # som är byggt på. NET-ramverket ger skräpuppsamlaren. Det hjälper till att hantera minnet. Det kan inte användas för att släppa de omanagda minnesresurserna. Metoden Dispose () kan användas för att uppnå denna uppgift.
Metoden Dispose () kan användas för att släppa ut resurser som databasförbindelser, filhanterare etc. Denna metod kallas inte automatiskt. Därför bör programmeraren genomföra denna metod. Så snart denna metod är påkallad, frigörs minnet för den specifika omanagda resursen. Den här metoden är deklarerad i gränssnittet.
Den slutliga metoden kallas endast av sopsamlare när referensen till ett objekt inte används vidare. Denna metod kallas precis innan du förstör objektet. Denna metod implementeras med hjälp av destructorn. Den slutliga metoden definieras i klassen java.lang.object. Denna metod är deklarerad som skyddad. Det förklaras inte som offentligt för att undvika att komma åt de andra klasserna. Sammanfattningsvis kan den slutgiltiga metoden minimera programmets prestanda eftersom det inte frigör minnet direkt.
kassera () vs slutföra () | |
Disponeringen () är en metod för att stänga eller släppa omanagda resurser som filer, strömmar som innehas av ett objekt. | Slutförandet är en metod för att utföra rena operationer på omanagda resurser som hålls av det aktuella objektet innan objektet förstörs. |
Mål | |
Disponeringsmetoden används för att frigöra de omanagda resurserna när den påkallas. | Den slutgiltiga metoden används för att frigöra de omanagda resurserna innan objektet förstörs. |
Definierat gränssnitt eller klass | |
Disponeringen () definieras i gränssnittet IDisposable gränssnitt. | Slutförandet () definieras i klassen java.lang.object. |
Inbjudningsmetod | |
Disponeringsmetoden åberopas av programmeraren. | Den slutgiltiga metoden åberopas av sopsamlare. |
tillgång Specifier | |
Disponeringsmetoden är offentlig. | Den slutgiltiga metoden är skyddad. |
Fart | |
Disponeringsmetoden åberopas omedelbart. | Den slutgiltiga metoden åberopas långsamt. |
Prestanda | |
Disponeringen minskar inte programmets prestanda. | Den slutgiltiga metoden kan minimera programmets prestanda. |
I denna artikel diskuterades skillnaden mellan kassera och slutföra metoder i C #. Skillnaden mellan kassera () och slutföra () är att bortskaffa () måste uttryckligen åberopas av programmeraren medan slutförandet () påkallas av sopsamlare innan man förstör objektet.
1.Implementering Slutför och kassera för att rensa omanagda resurser. Tillgänglig här
2.Sharma, Nitya. "Tillbaka till grunderna - Kassera Vs Finalize." C # Corner. Tillgänglig här
1.'Csharp Logo'By Andres15alvarez - eget arbete, (CC BY-SA 4,0) via Commons Wikimedia