Zuhause Entwicklung Was ist entsorgen? - Definition aus techopedia

Was ist entsorgen? - Definition aus techopedia

Inhaltsverzeichnis:

Anonim

Definition - Was bedeutet Entsorgen?

Im Kontext von C # ist dispose eine Objektmethode, die aufgerufen wird, um den für die Speicherbereinigung und -freigabe erforderlichen Code auszuführen und nicht verwaltete Ressourcen wie Dateihandles und Datenbankverbindungen zurückzusetzen. Dispose verbessert die Leistung und optimiert den Speicher, indem nicht verwaltbare Objekte und knappe Ressourcen freigegeben werden, z. B. GDI-Handles (Graphics Device Interface), die in Anwendungen mit eingeschränktem Windows-Speicherplatz verwendet werden.


Die Dispose-Methode, die von der IDisposable-Schnittstelle bereitgestellt wird, implementiert Dispose-Aufrufe. Das Entsorgungsmuster wurde für eine zeitnahe und vorhersehbare Bereinigung, die Vermeidung vorübergehender Speicherlecks und die Entsorgung von Ressourcen entwickelt.

Techopedia erklärt Entsorgen

Das .NET Framework erleichtert die Garbage Collection (GC), verwaltet den Objektspeicher und die Ressourcen und fordert ungültige Objektspeicherreferenzen zurück, indem Finalize aufgerufen wird - eine nicht deterministische Methode. Die Dispose-Methode steuert die Lebensdauer von Objektspeicherinstanzen und bietet eine explizite Speicherbereinigungssteuerung im Vergleich zur impliziten Speicherbereinigung von Finalize. Dispose kann auch dann aufgerufen werden, wenn andere Speicherobjektinstanzen vorhanden sind, während Finalize erst aufgerufen werden kann, nachdem das letzte Speicherobjekt zerstört wurde.


Die Regeln für die Entsorgungsmethode lauten wie folgt:

  • Wird für nicht verwaltete Ressourcen verwendet, die nach der Verwendung sofort freigegeben werden müssen.
  • Wenn Dispose nicht aufgerufen wird, sollte die Finalize-Methode implementiert werden.
  • Nach dem Aufrufen der Dispose-Methode muss die GC.SuppressFinalize-Methode aufgerufen werden, um die Finalize-Methode abzuwenden und unnötigen GC zu vermeiden.
  • Ausnahmen sollten sorgfältig behandelt werden, wenn die Dispose-Methode mehr als einmal aufgerufen wird. Wenn Ressourcen freigegeben werden, kann jede Instanzmethode die ObjectDisposedException auslösen.
  • Ein Objekt mit einer zuvor genannten Dispose-Methode kann möglicherweise nicht wiederverwendet werden.
  • Dispose wird nur für die Verwaltung von systemeigenen Ressourcenobjekten und COM-Objekten (Component Object Model) empfohlen, die in .NET Framework verfügbar gemacht werden.
  • Dispose kann aufgrund unvorhersehbarer Ergebnisse möglicherweise nicht von mehreren Threads gleichzeitig aufgerufen werden.
  • Werttypen sollten nicht als Disposable-Typen oder mit nicht verwalteten Ressourcenelementen erstellt werden.
  • Wenn Sie nicht verwaltete Ressourcen verwenden, wird empfohlen, die Using-Anweisung des Quellcodes anzuwenden, mit der die Dispose-Methode des Objekts nach Abschluss des Objektcodes automatisch aufgerufen wird.
Diese Definition wurde im Kontext von C # geschrieben.
Was ist entsorgen? - Definition aus techopedia