/ / Was passiert, wenn Java keinen Müll einsammelt? - Java, Müllsammlung

Was passiert, wenn Java keinen Müll sammelt? - Java, Müllsammlung

Meine Frage ist sehr sehr klar .. wenn es nicht Müll sammelt, was passieren wird
Und warum passiert das in c ++ nicht?

Antworten:

0 für die Antwort № 1

Wenn veraltete Objekte nicht gesammelt werden, werden Sie ausgeführtin einen OutOfMemoryError. Und dies wird auch in C ++ geschehen, wenn Sie alte Daten nicht bereinigen (der Fehler wird wahrscheinlich nicht als OutOfMemoryError bezeichnet, aber die Konsequenzen sind vermutlich die gleichen).


0 für die Antwort № 2

Das passiert in C / C ++. Auf andere Weise. In C / C ++ liegt die Verantwortung eher beim Programmierer, um den zugewiesenen Speicher zu verfolgen und ihn freizugeben. Programmierer haben direkten Zugriff auf den Speicher in Form von Zeigern. In Java ist alles vor dem Programmierer verborgen. Sie müssen den Speicher nicht nachverfolgen, die JVM erledigt das für Sie in Form einer Garbage Collection. Dies bedeutet nicht, dass Sie den Objekten Speicherplatz schnell und einfach zuweisen können. Globale Objekte bleiben lange erhalten und wenn GC sie nicht erreichen kann Mit der Zeit überschreitet der Speicher das Limit und die OutOfMemoryException tritt auf.