web-dev-qa-db-fra.com

Profileur de mémoire Javascript pour Firefox

Existe-t-il un outil/plugin/fonction pour Firefox qui videra une utilisation de la mémoire des objets Javascript que vous créez dans une page/script? Je connais le profileur de Firebug mais j'aimerais quelque chose de plus que des fois. Quelque chose qui ressemble à ce que Yourkit a pour Java profilage de l'utilisation de la mémoire.

La raison en est qu'un collègue utilise des identifiants pour les "clés" dans un tableau et crée des milliers d'emplacements vides quand il le fait. Il est d'avis que cela est inoffensif alors que mon opinion diffère. Je voudrais offrir une preuve pour prouver si j'ai raison ou non.

51
seth

Je n'ai pas essayé les outils de vérification du logiciel, mais Mozilla a des outils qui suivent la mémoire globale consommée par firefox dans le but d'endiguer les fuites:

http://www.mozilla.org/performance/tools.html

et:

https://wiki.mozilla.org/Performance:Leak_Tools

Il y a aussi ce gars qui dit d'éviter les grands tableaux dans le contexte des fermetures, vers le bas de l'article

http://ajax.sys-con.com/node/352585

11
Gene T

Je pense que JavaScript Memory Validator de Software Verification Limited peut vous aider, il a une vue des allocations, une vue des objets, une vue des générations, etc. Ce n'est pas gratuit mais vous pouvez utiliser la version d'évaluation pour vérifier le code de votre collègue. Ils ont également des validateurs de performances et de couverture ...

6
CMS

Voir la source . Les tableaux clairsemés ne prennent pas beaucoup de mémoire, mais si votre collègue n'a pas besoin de fonctionnalité Array, il devrait quand même utiliser des Object simples.

6
Nickolay

Essayez également about:memory qui indique la quantité de mémoire occupée par chaque fenêtre et la quantité de celle-ci dédiée aux objets JS. Il fournit un résumé de haut niveau sans utilisation par objet, mais c'est un bon point de départ pour étudier les besoins en mémoire d'un site.

6
Jan Wrobel

Vous pouvez utiliser les outils de développement de Mozilla. Pour utiliser les outils de développement avancés de Firefox, vous devez créer une version de débogage au lieu d'une version de version. Pour en savoir plus sur le processus de construction, voir la page . De plus, vous trouverez plus d'informations sur l'utilisation des outils de développement de Mozilla dans ce papier .

1
Eugene Ilyushin