finalizer

Ein Finalizer ist eine spezielle Methode in einer objektorientierten Sprache, die ausgeführt wird, wenn ein Objekt als Garbage Collection erfasst wird.
1
Antwort

GC-Verhalten inkonsistent zwischen 32-Bit- und 64-Bit-Anwendungen

Ich habe inkonsistentes Verhalten vom GC festgestellt, als ich Konsolenanwendungen unter 32-Bit und 64-Bit in .Net 4.0 mit VS 2013 kompiliert habe. Betrachten Sie den folgenden Code: %Vor% und in Main() ... %Vor% Bei Ausführung im...
15.05.2015, 08:05
3
Antworten

c #: Wie können Finalizer-Ausnahmen von einer Bibliothek eines Drittanbieters behandelt werden?

Finalisten werden immer von .net framework aufgerufen, sodass die Sequenz außer Kontrolle geraten könnte. und selbst wenn der Konstruktor fehlgeschlagen ist, kann der Destruktor weiterhin ausgelöst werden. Dies könnte zu Problemen führen, wen...
18.07.2011, 01:50
2
Antworten

Warum versucht der c # -Abfallsammler nicht, Speicher freizugeben, bis eine Anforderung erfüllt werden kann?

Betrachten Sie den folgenden Code: %Vor% Ich habe eine Klasse, BigObject, die ein 700MB-Array in ihrem Konstruktor erstellt und eine Finalize-Methode hat, die nichts anderes tut, als in die Konsole zu drucken. In Main erstelle ich zwei diese...
06.02.2013, 07:56
1
Antwort

Xamarin Android Finalizer wird nicht aufgerufen, wenn Sie die Aktivität verlassen, um zu einer anderen Aktivität zu wechseln

Der Finalizer wird nie nach dem Verlassen der Aktivität aufgerufen. Bedeutet das, dass die Aktivität noch am Leben ist, obwohl ich mit der nächsten Aktivität weitergemacht habe. %Vor%     
04.03.2015, 19:22
4
Antworten

Verwendung des Destruktors / Dispose der Basisklasse?

In C #, wie in der Dokumentation erwähnt, und dieser nette Post 's akzeptierte Antwort, es wird gesagt, dass Klassen den Destruktor nicht erben ihre Elternklasse. Die Frage : Wenn ich sicherstellen möchte, dass die privaten Elemente der B...
20.04.2011, 14:48
2
Antworten

Durch die Entfernung von MemoryCache in Finalizer wird AccessViolationException ausgelöst

BEARBEITEN Weitere Informationen finden Sie unter Bearbeiten der Notiz am Ende der Frage. Ursprüngliche Frage Ich habe eine CacheWrapper-Klasse, die intern eine Instanz der .NET MemoryCache -Klasse erstellt und festhält. MemoryC...
08.10.2014, 19:05
2
Antworten

Warum Ereignishandler verhindern, dass der Garbage Collector auftritt

Ich habe dieses Stück Code %Vor% In der Main-Methode meiner Anwendung habe ich %Vor% Wenn ich das ausführe, werde ich 0 als Ausgabe haben. Wenn ich Ereignissubskriptionen aus dem Code entferne, erhalte ich das erwartete Ergebnis - das is...
18.06.2013, 08:54
2
Antworten

Gute Beispiele für die Verwendung von Finalizern in C #

Als ich ein paar Artikel über Speicherverwaltung in C # gelesen habe, war ich von Finalizer-Methoden verwirrt. Es gibt so viele komplizierte Regeln, die sich auf sie beziehen. Zum Beispiel weiß niemand, wenn die Finalizer aufgerufen werden, s...
03.11.2010, 15:09
4
Antworten

java: wait (), notify () und synchronisierte Blöcke

Ich habe gelernt, dass das Aufrufen der wait() -Methode eines Objekts den Objektmonitor, falls vorhanden, freigibt. Aber ich habe einige Fragen bezüglich des Aufrufs von notify() für dieses Objekt durch einen anderen Thread: (wann)...
06.07.2010, 21:57
2
Antworten

Kann ich verhindern, dass eine nicht abgefangene Ausnahme in einer anderen AppDomain die Anwendung herunterfährt?

Ich habe Probleme mit einer fehlerhaften Bibliothek, die eine Ausnahme in einem Finalizer auslöst, was natürlich die Anwendung stürzt. Um dies zu vermeiden, habe ich versucht, die Bibliothek in ihrer eigenen AppDomain zu laden, aber die Ausna...
11.10.2010, 12:44