Das unten stehende Wikipedia-Snippet wird von keiner verlässlichen Quelle unterstützt. Kannst du eine finden?
Klicke auf Verstanden!, um zu Wikipedia zu gehen und das Snippet zu reparieren, oder Nächstes!, um ein anderes zu sehen. Viel Glück!
In Seite Ressourcenbelegung ist Initialisierung:
"Das korrekte Funktionieren dieser Technik hängt wesentlich von den Eigenschaften der Konstruktoren und Destruktoren der Sprache ab. In C++ wird durch den Sprachstandard garantiert, dass ein Objekt beim Durchlaufen seiner Deklaration erstellt und dabei sein Konstruktor aufgerufen wird. Beim Verlassen seines Gültigkeitsbereichs muss das Objekt zerstört werden, d. h. sein Destruktor wird aufgerufen und kann die Freigabe von Ressourcen veranlassen.[1] Dass ein Destruktor aufgerufen wird, kann allerdings in keiner Programmiersprache garantiert werden, da Programme immer abnormal (z. B. durch Stromausfall oder SIGKILL) beendet werden können. In solchen Fällen kann allerdings keine Programmiertechnik die korrekte Freigabe der Ressourcen sicherstellen.
Programmiersprachen mit Garbage Collection, wie z. B. C# oder Java, machen keine Garantien bezüglich des Zeitpunkts, zu dem ein nicht mehr referenziertes Objekt durch den Garbage Collector freigegeben wird. Dieser Zeitpunkt, zu dem ein Objekt zerstört und die Finalisierungsmethode aufgerufen wird, ist bei nebenläufiger Garbage Collection auch nicht mehr deterministisch. Dadurch kann das Objekt eine Ressource länger belegen als eigentlich erwartet, insbesondere auch über seinen Gültigkeitsbereich hinaus. Allgemein kann dieses Problem nur umgangen werden, indem explizit eine Funktion zur Freigabe der Ressourcen aufgerufen wird und/oder spezielle Sprachkonstrukte verwendet werden.[2][3][4]
Die für C# empfohlene Alternative ist die Implementierung des
System.IDisposable
-Interfaces – auch Dispose Pattern genannt. Bei Verwendung desusing
-Blocks wird sichergestellt, dass die MethodeDispose()
am Ende dieses Blocks aufgerufen wird, um belegte Ressourcen zu einem definierten Zeitpunkt freizugeben.In Java kann mithilfe der try-with-resources-Anweisung ähnlich sichergestellt werden, dass Ressourcen am Ende eines Gültigkeitsbereichs in umgekehrter Reihenfolge wieder freigegeben werden.[5][6]
Du kannst Citation Hunt anpassen, indem du eine Liste mit Artikeln angibst. Dies gibt dir einen Link, den du mit anderen teilen kannst, damit sie Citation Hunt mit den von dir beschränkten Artikeln durchsuchen können.
Wie möchtest du ein benutzerdefiniertes Citation Hunt erstellen?
Benutze das Suchfeld unten, um Artikel zu finden und zu deinem benutzerdefinierten Citation Hunt hinzuzufügen. Du kannst einen Artikel entfernen, indem du ihn in der Vorschau unten anklickst.
Bitte gib unten die zu importierenden Wikipedia-Artikeltitel ein, einen pro Zeile:
PetScan ist ein Werkzeug zur Abfrage von Wikipedia und zum Definieren von Artikellisten. PetScan weist Abfragen Kennungen zu, damit ihre Ergebnisse in andere Werkzeuge importiert werden können.
Bitte erstelle deine Abfrage in PetScan und füge ihre Kennung unten ein:
Pagepile ist ein Tool zum Definieren von Listen mit Wikipedia-Artikeln. Pagepile weist Listen Kennungen zu, sodass deren Ergebnisse in andere Tools importiert werden können.
Bitte erstelle deine Liste in Pagepile und füge ihre Kennung unten ein:
Bitte warten. Dein benutzerdefiniertes Citation Hunt wird berechnet. Dies kann einige Minuten dauern…
Du kannst Zurück drücken oder diesen Dialog schließen, um abzubrechen.
Dein benutzerdefiniertes Citation Hunt wurde erstellt!
Du kannst den Link oben kopieren und teilen, um anderen die Verwendung zu erlauben, oder beginne jetzt mit dem Durchsuchen!
Leider ist die Erstellung deines benutzerdefinierten Citation Hunt fehlgeschlagen oder es kam leer!
Bitte erneut versuchen und die folgenden Tipps im Kopf behalten: