Je trouve Flex besoin de plus de RAM que Flash, j'utilise le profilage Flex pour le tracer, je ne sais pas pourquoi GC ne recycle pas l'objet mxml quand je ne veux pas l'utiliser?Comment laisser GC recycler la RAM de mxml quand je ne veux pas l'utiliser?
Répondre
La liaison de données est connue pour cacher des références. Vous devez vous assurer que chaque référence à tout est détruite. Je suis allé jusqu'à faire des fonctions de destruction récursives qui dévalent une liste d'affichage de composants nuking tout ce qu'il peut trouver (suppression des enfants, etc). Par conséquent, définissez l'une de vos propriétés sur null, définissez toutes les propriétés liées sur null, conservez-la et vous êtes obligé (har) de trouver le coupable.
Bien sûr, tout cela pourrait être beaucoup trop. Le GC travaille selon son propre calendrier et il n'a peut-être pas besoin du bélier pour le moment, il ne nettoie donc pas l'espace. Cela ne vous dérange pas vraiment si vous ne voulez pas l'utiliser;)
Donc, soit il existe une référence parasite, soit le GC n'a pas encore démarré.
Si vous avez l'édition professionnelle de Flex Builder, vous pouvez utiliser le profileur de mémoire pour trouver l'objet en question et voir comment il est ancré au graphe d'objet.
- 1. CSS imbriqué ne fonctionne pas comme je le veux!
- 2. Quelque chose ne va pas quand je veux lire mon cookie - en utilisant ASP.NET
- 3. Comment ne pas laisser l'utilisateur choisir un certain TabBarItem
- 4. Postfix virtuelle: domaine parent correspond subdomains - Je ne veux pas
- 5. Je ne veux pas de zone de texte pour entrer une valeur nulle dans la donnée
- 6. Je veux toujours laisser un enregistrement si table de l'enregistrement count = 1 avec SQL
- 7. Powershell: laisser l'élément seul si regex ne correspond pas
- 8. Je veux créer un navigateur Web, mais je ne sais pas par où commencer?
- 9. Lambda Expression car la cible de référence faible ne peut pas être GC?
- 10. Comment faire WSDL.exe ne pas générer les méthodes XxxAsync (je veux toujours Begin/EndXxx)
- 11. Session_set_save_handler fermer/gc
- 12. RAM problèmes PerformanceCounter
- 13. AMFPHP & PHP - Retourne les données XML avec des tags. Je ne veux pas
- 14. programme ne répond pas quand j'ajoute la toile sur la fonction enterFrame
- 15. Sous-classe d'un UIViewController, quand et quand ne pas
- 16. Comment faire pour qu'une regex ne corresponde PAS quand je trouve quelque chose d'indésirable
- 17. Carte d'identité générique en C#. Je ne veux pas de constructeur public
- 18. Avec Rails, où devrais-je mettre des extraits html? Je ne veux pas de partiels, mais je veux les recharger pendant le développement
- 19. Jquery démo simple gestionnaire de photos - recycler complètement la corbeille
- 20. Création dynamique de pages statiques ... (Je ne pose pas cette question parce que je veux, plutôt parce que je dois ...)
- 21. Cocoa Distributed Objects, client GC, serveur non-GC
- 22. Quand les structs ne vivent-ils pas sur la pile?
- 23. Formulaires L'authentification expire quand elle ne devrait pas l'être?
- 24. Pourquoi Perl n'est pas /// faire ce que je veux?
- 25. Quand est-ce que la méthode d'élimination ne serait pas appelée?
- 26. Le moniteur de performances à distance ne parvient pas à récupérer le tas GC
- 27. je veux capturer tous les tags ne pas avoir un tag spécifique
- 28. Pourquoi le GC ne dispose-t-il pas automatiquement les membres de ma classe?
- 29. Messagerie, files d'attente et ESB - Je sais où je veux être mais pas comment y arriver
- 30. IE ne pas me laisser définir une valeur de textarea avec javascript
Ou le GC a simplement décidé qu'il n'avait pas besoin d'être nettoyé car il vous reste quand même beaucoup de RAM libre. Il y a une centaine de raisons possibles. –