2010-08-26 6 views
0

J'ai une application web Flex où je visualise des données (pour différents pays) sous forme de graphiques. Les données sont sous la forme de fichiers CSV. Il existe des fichiers individuels pour des graphiques individuels, c'est-à-dire qu'un fichier contient toutes les données relatives à un graphique pour tous les pays.L'application web Flex devient progressivement plus lente et gèle

J'ai un menu de navigation à gauche qui permet de voir les données pays par pays. Comme je vois de plus en plus de pays, l'application web devient progressivement plus lente jusqu'à ce qu'elle gèle complètement. Le problème disparaît si j'actualise le navigateur et vide le cache.

J'utilise la classe URLLoader dans flex pour lire les données CSV dans une chaîne, puis j'analyse la chaîne pour générer les diagrammes.

Je réalise que cela se produit parce que de plus en plus de données s'accumulent d'une manière ou d'une autre dans le navigateur. Flex peut-il remédier à cela? Tout pointeur/aide serait apprécié.

Merci - Vinayak

+0

Bonjour, essayez d'utiliser le générateur de profils Flash: http://help.adobe.com/fr_FR/flashbuilder/using/WS6f97d7caa66ef6eb1e63e3d11b6c4d0d21-7e46.html – OXMO456

Répondre

2

Comme @ OXMO456 dit avant mon, j'utiliser le profileur pour vérifier cette question. pour affiner ma réponse, je dirais aussi s'il vous plaît assurez-vous que vous suivez toutes les règles de la faible mémoire flex comme 1. curage (suppression) écouteurs d'événements 2. mise à zéro des variables statiques

et plus comme alors. J'utiliserais la fonction «snapshot» du profileur et verrais ce qui se passe dans la minute 1 puis dans la minute 2, la différence entre les deux est probablement la source de votre fuite.

+0

Merci @Avi. Je n'ai pas Flash Builder 4 (je suis sur Eclipse Plug-in pour Flex 3) donc je n'ai pas pu essayer le profileur. Cependant, l'effacement des auditeurs d'événements semble avoir résolu le problème. :-) – Vinayak

Questions connexes