Flex Debug – Garbage Collector AS3: Gestion des ressources
ActionScript 3 a beaucoup apporté aux développeurs Flash, aussi bien pour les nombreuses améliorations de l'API, que pour la rapidité d'exécution de son code. Malheureusement, cela a aussi demandé aux développeurs bien plus de responsabilités et d'attention qu'avant. On va voir dans cet article comment gérer ses ressources dans un projet AS3 pour éviter les fuites de mémoires (Memory Leaks).
Flex Debug – Garbage Collector AS3 et Flash Player 9
Le plus grand changement apporté par l'AS3 qui affecte la gestion des ressources mémoire est le nouveau modèle de la liste d'affichage (Display List). Avec Flash Player 8 et inférieur, quand un Display Object était supprimé de l'écran (par un removeMovie ou un unloadMovie), lui est tous ses descendants étaient immédiatement supprimés de la mémoire, et toute exécution du code était stoppée. Flash Player 9 introduit un modèle de Display Liste bien plus flexible, où les Display Objects (Sprite, MovieClip, etc.) sont traités comme des objets classiques. Cela veut dire que les développeurs peuvent faire de nouvelles choses comme la modification de parent (bouger un Display Object d'une Display List à une autre), et instancier des Display Object depuis des SWF chargés. Malheureusement, ce veut aussi dire que les Display Object sont maintenant traités comme n'importe quel objet par le Garbage Collector, ce qui apporte de nouveaux problèmes pas toujours évidents.





