Hjem Udvikling Hvad er bortskaffelse? - definition fra techopedia

Hvad er bortskaffelse? - definition fra techopedia

Indholdsfortegnelse:

Anonim

Definition - Hvad betyder bortskaffelse?

I forbindelse med C # er dispose en objektmetode, der påberåbes for at udføre kode, der kræves til hukommelsesoprydning og frigive og nulstille ikke-administrerede ressourcer, såsom filhåndtag og databaseforbindelser. Bortskaffelse forbedrer ydeevnen og optimerer hukommelsen ved at frigive uhåndterbare objekter og knappe ressourcer, som GDI-håndtag, der bruges i applikationer med begrænset Windows-plads.


Bortskaffelsesmetoden, der leveres af den identificerbare interface, implementerer bortskaffelsesopkald. Bortskaffelsesmønsteret er designet til rettidig og forudsigelig oprydning, forebyggelse af midlertidige hukommelseslækager og bortskaffelse af ressourcer.

Techopedia forklarer Bortskaffelse

.NET-rammerne letter affaldsopsamling (GC), administrerer objekthukommelse og ressourcer og genvinder ugyldige objekthukommelsesreferencer ved at påberåbe sig Finalize - en ikke-deterministisk metode. Dispose-metoden styrer levetiden på objekthukommelsesforekomster og giver eksplicit kontrol med hukommelsesoprensning versus Finalises implicitte hukommelsesoprydning. Bortskaffelse kan påberåbes, selv når der findes andre hukommelsesobjektforekomster, mens Finalisering kun kan påberåbes, når det sidste hukommelsesobjekt er ødelagt.


Regler for bortskaffelsesmetode er som følger:

  • Bruges til ustyrede ressourcer, der kræver øjeblikkelig frigivelse efter brug.
  • Hvis Bortskaffelse ikke kaldes, skal Finalize-metoden implementeres.
  • Efter at have kaldt Dispose-metoden, skal GC.SuppressFinalize-metoden kaldes for at afværge Finalize-metoden og undgå unødvendig GC.
  • Undtagelser skal håndteres omhyggeligt, hvis bortskaffelsesmetoden påberåbes mere end én gang. Hvis ressourcer afsættes, kan en hvilken som helst forekomstmetode kaste ObjectDisposedException.
  • Et objekt med en tidligere kaldet Bortskafmetode kan muligvis ikke genbruges.
  • Bortskaffelse anbefales kun til styring af oprindelige ressourceobjekter og COM-objekter (Component Object Model) udsat for .NET Framework.
  • Bortskaffes måske ikke samtidigt fra flere tråde på grund af uforudsigelige resultater.
  • Værdityper skal ikke oprettes som engangstyper eller med ikke-administrerede ressourcemedlemmer.
  • Når du bruger ikke-administrerede ressourcer, betragtes det som den bedste praksis at anvende kildekodens Brug-sætning, som automatisk påberåber sig objektets Bortskaffelsesmetode, når objektkoden er afsluttet.
Denne definition blev skrevet i forbindelse med C #
Hvad er bortskaffelse? - definition fra techopedia