Ich habe eine Anwendung gebaut, die 40% ihrer Zeit damit verschwendet Müll zu sammeln, und ich bin am Ende meines Wissens versucht herauszufinden, woher es kommt. Ich habe alle möglichen Probleme in meinem eigenen Code eingeklemmt, aber es bleibt bestehen. Ich fange an, einen Drittanbieter-Code zu vermuten, der das Problem ist, und ich würde gerne wissen, ob ich irgendwie herausfinden kann, was wird Müll gesammelt. Wenn es eine Chrome-spezifische Antwort gibt, wäre das großartig, aber ich werde an dieser Stelle alles nehmen.Wie kann ich protokollieren, was Müll in meinem JavaScript-Code gesammelt wird?
10
A
Antwort
0
Vielleicht könnten Sie versuchen Chrome's Heap Profiler?
Auch Fragen zu Javascript Heap Profilierung:
2
In Chrome ich mit folgenden beginnen würde:
- DevTools> Profil
- Nehmen Sie Heap Snapshot
- mit der Anwendung arbeiten
- Heap Snapshot Nehmen Sie wieder
- den zweiten Schnappschusses Inspizieren im Vergleich Modus
folgenden Links können nützlich sein:
Verwandte Themen
- 1. Warum wird dieser Müll gesammelt?
- 2. Service wird nie Müll gesammelt
- 3. Was passiert, wenn eine Scala "Future" Müll gesammelt wird?
- 4. Wird Objective-C auf Linux-Müll gesammelt?
- 5. Großer Speicherbrocken nicht Müll gesammelt
- 6. Wie Erlang Atome Müll gesammelt werden können
- 7. Delegierten nicht bekommen Müll gesammelt
- 8. In Java wird Permanent Generation Speicherplatz Müll gesammelt?
- 9. Picasso Ziel wurde Müll gesammelt
- 10. Protokollierung, wenn Objekte Müll gesammelt werden
- 11. Castle Windsor: Wird meine vorübergehende Komponente Müll gesammelt?
- 12. Java Thread Müll gesammelt oder nicht
- 13. Ermitteln, ob ein Objekt Müll gesammelt wurde
- 14. Web-Audio MediaElementSource-Knoten wird nicht als Müll gesammelt
- 15. Verwirft Haskell einen Funken, wenn der Thunk Müll gesammelt wird?
- 16. Müll gesammelt Cache über Javascript WeakMaps
- 17. Können Timer automatisch Müll gesammelt werden?
- 18. Wie kann ich einen bestimmten Agenten in Clojure stoppen? Wann werden ihre Staaten Müll gesammelt?
- 19. Warum werden Silverlight ContentControls nicht als Müll gesammelt?
- 20. Wie kann ich Benutzeraktivität protokollieren
- 21. Wie wird die Bearbeitungszeit in C gesammelt?
- 22. Sind goroutines Müll zusammen mit ihren Kanälen gesammelt?
- 23. Wie kann ich Daten in Netlogo protokollieren
- 24. Wie kann man das Löschen von vertraulichen Daten garantieren, bevor es in Java auf Müll gesammelt wird?
- 25. Kann eine Klasse, die sich selbst in einem statischen Feld referenziert, Müll gesammelt werden?
- 26. OutOfMemoryError - warum kann ein wartender Thread nicht als Müll gesammelt werden?
- 27. Wie werden anonyme Objekte in JavaScript gesammelt?
- 28. .NET: Gibt es eine Möglichkeit, festzustellen, wenn ein Objekt entsorgt/Müll gesammelt wird?
- 29. Wie kann ich all diesen Müll in js.map-Dateien verstehen?
- 30. Wird ein Python-Generator Müll gesammelt, wenn er nicht mehr verwendet wird, aber noch nicht StopIteration erreicht?
Ich habe einige der gleichen Probleme wie Shino, und ich bin nicht überzeugt, dass dies sehr gut funktionieren würde. In meinem Fall tritt der GC in jeder Sekunde ein, so dass es schwierig sein könnte, einen wenig genutzten und viel genutzten Haufen zu fangen. – UpTheCreek