Trouver une .NET Fuite de Mémoire?

J'ai créé un exemple de programme, avec 2 boîtes de dialogue. Les deux boîtes de dialogue ont une zone d'image, on appelle pictureBox1.Image.Dispose(); protected override void dispose(bool disposing) et l'autre ne l'est pas.

Lorsque vous exécutez le programme, et utiliser le Gestionnaire des Tâches de regarder l'utilisation de la mémoire, il devient très évident que la boîte de dialogue qui n'appelle pas pictureBox1.Image.Dispose(); fuites de mémoire très mal.

Quelqu'un a une suggestion pour un outil qui permettrait de voir le problème dans une telle façon claire?

Est-il possible de compter allocation/libération de mémoire pour un particulier c# fichier source? Au moins c'était quelque chose que j'étais capable de faire avec le C++.

Vous pourriez tout simplement essayer de le procès de tout .net mémoire le logiciel profiler comme de RedGate ou de Jetbrains.
Avez-vous essayé de le profiler intégré de Visual Studio 2010?
Il ya beaucoup de bons outils pour le profilage de la mémoire. Voici un précédent article: stackoverflow.com/questions/399847/net-memory-profiling-tools
ce fil est mal obsolètes, des outils ont évolué dans le passé 10 ans

OriginalL'auteur user691585 | 2011-04-04