Ich verwende Cocos2d 2.0 mit ARC aktiviert. Mein Spiel ist ein zufällig generiertes Spiel, also muss ich Texturen (spritesheet-batchnode) innerhalb einer Szene in der Mitte des Spiels laden/entladen. Ich versuche Priteframes aus Datei zu entfernen und Textur für Schlüssel für ein Spritesheet zu entfernen, das ich in der Mitte entladen möchte. Wenn ich nach dem Entladen des Blattes dumpcachedtextureInfo verwende, wird diese Spritesheet-Textur nicht in den Protokollen von dumpcachedtextureinfo angezeigt.Schätzung der Speichernutzung von Cocos2d Spiel
Aber wenn ich Instrumente/Aktivitätsmonitor verwenden, um meine App zu profilieren, sinkt die tatsächliche Speichernutzung nicht nach dem Entladen der Textur und des Spritesheets.
Gibt es einen Weg, wo dumpcachedtextureinfo keine Textur zeigt, die noch im Speicher ist? Außerdem zeigt My livebytes Spalte in Zuordnungen 4 MB.
Auch wie ich an verschiedenen Stellen gelesen, dass Zuordnungen nicht Texturspeicher zeigt.
So leben meine Zuteilungen Bytes Spalte sagt 4 MB, meine Gesamttexturspeicher als mit Protokollen von dumpcchedtextureinfo gezeigt wird gezeigt 84MB zu sein, aber Speicher überwachen Stills zeigt reale Speichernutzung 84 + Spritesheet Größe sein + Live-Bytes
Ich kann diesen Unterschied nicht verstehen?
Ich verlasse nicht die Szene, also bin ich nicht sicher, ob ARC den Speicher hält oder was?
Da Sie bereits Instrumente verwenden, prüfen Sie, ob einer der großen Erinnerungsstücke sind immer noch "lebend" und vielleicht durchgesickert. Ansonsten haben Sie vielleicht die Spalte für die gesamte Zuweisung betrachtet, die niemals sinken wird. – LearnCocos2D
Ich bin besorgt über die "Real Memory Usage" Metrik unter Aktivitätsmonitor. Es verringert sich auch nach dem Entladen nicht. Ich kann nicht verstehen, warum das ist? – user1847220