thx, je perd bcp de temps à corriger ces leaks dans un Air ... et meme après avoir fait tout ce que je pouvais, la mémoire continue de monter...
sinon bon plan le coup des CSS <mx:Style, et des frames, je savais pas, merci et je me demande quand sortira l'update de Air qui apportera les nouveautés du FP10. parceque là je suis super dépendant du bon vouloir d'Adobe (j'allais écrire Apple, lol) et ça me saoule. ++ On Oct 6, 6:53 pm, zwetan <[EMAIL PROTECTED]> wrote: > oui des fois j utilise FCNG comme un scratch book > > donc liens interessants a propos de la memoire et quelques notes > car tout le monde a pas forcement le meme avis ou point de vue > > AS3: Resource Management pt > 1http://www.gskinner.com/blog/archives/2006/06/as3_resource_ma.html > > AS3: Resource Management pt > 3http://www.gskinner.com/blog/archives/2006/08/as3_resource_ma_2.html > > Garbage Collector Interactive > Simulatorhttp://www.gskinner.com/blog/archives/2006/09/garbage_collect.html > > Failure to Unload: Flash Player 9's Dirty > Secrethttp://www.gskinner.com/blog/archives/2008/04/failure_to_unlo.html > > Flex Performance, Memory Management, & Object > Cachinghttp://www.insideria.com/2008/03/flex-performance-memory-manage.html > > Garbage collector in Flash Player 9/Actionscript > 3http://blog.comtaste.com/2008/04/garbage_collector_in_flash_pla.html > > Flash Player Memory Management and Garbage Collection > redux.http://blog.flexmonkeypatches.com/2007/03/28/flash-player-memory-mana... > > Garbage Collection and Memory > Leakshttp://blogs.adobe.com/aharui/2007/03/garbage_collection_and_memory.html > (downloader le ppt ca explique tout > bienhttp://blogs.adobe.com/aharui/GarbageCollection/GCAtomic.ppt) > > Kick starting the garbage collector in Actionscript 3 with > AIRhttp://www.craftymind.com/2008/04/09/kick-starting-the-garbage-collec... > > Flash Player Mental Model - The Elastic > Racetrackhttp://www.onflex.org/ted/2005/07/flash-player-mental-model-elastic.php > > a retenir: les 3 derniers links > > ce que j'ai pu verifier c'est que le Elastic RaceTrack influe > directement sur ce que la GC peut virer ou pas > > en gros, 2 choses importantes cohabitent en memoire > - Object Memory > le code AS3 dans le bytecode > - Render Memory > le rendu gfx DisplayObject etc. a l'ecran > > le 1er (Object Memory) peut se virer plus ou moins facilement de la > memoire > a condition de ne pas creer de memory leaks > - si addEventListener utiliser removeEventListener > - dans certains cas utiliser des events en weak reference (mais pas > forcement par defaut partout) > - utiliser les Dictionary aussi en weak reference > - un simple Object utiliser comme un hash peut aussi creer des memory > leaks > - etc. > (voir GCAtomic.ppt ou tout est explique en detail) > > pour Flex en cas particulier > - faire gaffe de ne pas initialiser depuis un Module un Manager, genre > le PopUpManager > - si vous utilisez des mx:Style tag partout et bah vous les virer et > utiliser des CSS externe compilees > sinon ca vous fera cahttp://bugs.adobe.com/jira/browse/SDK-15621 > et plein de memory leaks partout > - etc. > > le 2nd (Render Memory) est vachement plus chiant a virer de la > memoire, > si vous etes vraiment force il faut jouer sur le passage d'uen frame a > l'autre > (voir "Kick starting the garbage collector in Actionscript 3 with > AIR") > et en fait double kicker la GC, un coup pour le mark et un autre coup > pour le sweep, > et forcement comme System.GC() n'est dispo que dans le debug player et > bah oui > il faudra utiliser le hack de LocalConnection appeler 2 fois, donc > avec un player non-debug > ca vous donnera a peu pres ca: > > private function _forceMarkSweep():void > { > try > { > new LocalConnection().connect( "foobar" ); > new LocalConnection().connect( "foobar" ); > } > catch( e:* ) > { > > } > } > > - frame 1 > _forceMarkSweep() > - frame 2 > - frame 3 > _forceMarkSweep() > > et encore meme en faisant ca il peut y avoir des cas ou le player > liberera la memoire quand il veut, bref rien de garantie a 100% > > idealement: attendre le FP10 > > techniquement avec juste FP9, oui c'est possible, mais tres tres tres > dure > surtotu si vous utilisez de mxml, si vous gerer tout en AS3 plus > facile > > zwetan --~--~---------~--~----~------------~-------~--~----~ Vous avez reçu ce message, car vous êtes abonné au groupe Groupe "FCNG" de Google Groupes. Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse [email protected] Pour résilier votre abonnement à ce groupe, envoyez un e-mail à l'adresse [EMAIL PROTECTED] Pour afficher d'autres options, visitez ce groupe à l'adresse http://groups.google.com/group/FCNG?hl=fr -~----------~----~----~----~------~----~------~--~---
