Als «garbage-collection» getaggte Fragen

Garbage Collection (GC) ist eine Form der automatischen Speicherverwaltung, bei der versucht wird, Müll oder Speicher zurückzugewinnen, der von Objekten belegt wird, die vom Programm nicht mehr verwendet werden.


2
Grundlegendes zur Speicherbereinigung in .NET
Betrachten Sie den folgenden Code: public class Class1 { public static int c; ~Class1() { c++; } } public class Class2 { public static void Main() { { var c1=new Class1(); //c1=null; // If this line is not commented out, at the Console.WriteLine call, it prints 1. } GC.Collect(); GC.WaitForPendingFinalizers(); …

6
Wie JavaScript-Schließungen durch Müll gesammelt werden
Ich habe den folgenden Chrome-Fehler protokolliert , der zu vielen schwerwiegenden und nicht offensichtlichen Speicherverlusten in meinem Code geführt hat: (Diese Ergebnisse verwenden den Speicherprofiler von Chrome Dev Tools , mit dem der GC ausgeführt wird, und erstellen dann einen Heap-Snapshot von allem, was nicht gesammelt wurde.) Im folgenden Code …

11
Vorgehensweise: java.util.concurrent.TimeoutException: android.os.BinderProxy.finalize () ist nach 10 Sekunden abgelaufen?
Wir sehen eine Reihe von TimeoutExceptionsin GcWatcher.finalize, BinderProxy.finalizeund PlainSocketImpl.finalize. 90 +% davon passieren auf Android 4.3. Wir erhalten Berichte darüber von Crittercism von Benutzern vor Ort. Der Fehler ist eine Variation von: " com.android.internal.BinderInternal$GcWatcher.finalize() timed out after 10 seconds" java.util.concurrent.TimeoutException: android.os.BinderProxy.finalize() timed out after 10 seconds at android.os.BinderProxy.destroy(Native Method) at …

24
Wann ist es akzeptabel, GC.Collect anzurufen?
Der allgemeine Rat ist, dass Sie nicht GC.Collectvon Ihrem Code aus aufrufen sollten , aber was sind die Ausnahmen von dieser Regel? Ich kann mir nur einige sehr spezifische Fälle vorstellen, in denen es sinnvoll sein kann, eine Speicherbereinigung zu erzwingen. Ein Beispiel, das mir in den Sinn kommt, ist …


9
Stack, Static und Heap in C ++
Ich habe gesucht, aber diese drei Konzepte nicht sehr gut verstanden. Wann muss ich die dynamische Zuordnung (im Heap) verwenden und was ist ihr wirklicher Vorteil? Was sind die Probleme von Statik und Stapel? Könnte ich eine gesamte Anwendung schreiben, ohne Variablen im Heap zuzuweisen? Ich habe gehört, dass andere …

6
Ist das explizite Schließen von Dateien wichtig?
Wenn Sie in Python entweder eine Datei öffnen, ohne sie aufzurufen close(), oder die Datei schließen, aber nicht verwenden try- finallyoder die withAnweisung " ", ist dies ein Problem? Oder reicht es als Codierungspraxis aus, sich auf die Python-Garbage-Collection zu verlassen, um alle Dateien zu schließen? Zum Beispiel, wenn man …




1
Python Garbage Collector-Dokumentation [geschlossen]
Geschlossen. Diese Frage entspricht nicht den Richtlinien für Stapelüberlauf . Derzeit werden keine Antworten akzeptiert. Möchten Sie diese Frage verbessern? Aktualisieren Sie die Frage so dass es beim Thema für Stack - Überlauf. Geschlossen vor 5 Jahren . Verbessere diese Frage Ich suche nach Dokumenten, die detailliert beschreiben, wie die …

5
Reduzieren der Pausenzeit für die Speicherbereinigung in einem Haskell-Programm
Wir entwickeln ein Programm, das "Nachrichten" empfängt und weiterleitet und dabei einen temporären Verlauf dieser Nachrichten führt, damit es Ihnen auf Anfrage den Nachrichtenverlauf mitteilen kann. Nachrichten werden numerisch identifiziert, haben normalerweise eine Größe von etwa 1 Kilobyte und wir müssen Hunderttausende dieser Nachrichten aufbewahren. Wir möchten dieses Programm auf …

3
Java GC (Allocation Failure)
Warum immer "GC (Allocation Failure)"? Java HotSpot (TM) 64-Bit-Server-VM (25.25-b02) für Linux-amd64 JRE ( 1.8.0_25 -b17), CommandLine flags: -XX:CMSInitiatingOccupancyFraction=60 -XX:GCLogFileSize=10485760 -XX:+HeapDumpOnOutOfMemoryError -XX:InitialHeapSize=32212254720 -XX:MaxHeapSize=32212254720 -XX:NewRatio=10 -XX:OldPLABSize=16 -XX:ParallelGCThreads=4 -XX:+PrintGC -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintStringTableStatistics -XX:+PrintTenuringDistribution -XX:StringTableSize=1000003 -XX:SurvivorRatio=4 -XX:TargetSurvivorRatio=50 -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseParNewGC -XX:+UseConcMarkSweepGC 27.329: [GC (Allocation Failure) 27.329: [ParNew Desired survivor size 44728320 bytes, new …


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.