2010-07-16 6 views
1

Possible en double:
Any Good Free .NET Profiler?Mon contrôle est terriblement lent. Quelqu'un sait-il un profileur facile à utiliser, GRATUIT pour le développement de C#?

Je suis actuellement un contrôle DEVELOPPER qui est censé dessiner un heatmap en temps réel à environ 20Hz. Cela consomme énormément de ressources CPU et je voudrais savoir quelle fonction les appels sont ralentir beaucoup, sinus j'ai eu l'impression que j'utilise déjà un algorithme assez efficace (uniquement dans des zones redessinant qui ont changé, pas instanciation toute nouvelle GDI objets connexes à moins que nécessaire, le nettoyage après moi-même à l'aide Dispose(), etc ...) donc des recommandations concernant un profileur qui remplit lesdites conditions ou concernant d'autres optimisations de mon algorithme seraient les bienvenus.

EDIT: J'ai utilisé le profileur EQATEQ et a découvert qu'il ne fait pas de différence si je changé Graphics.Clip. Se trouve que l'on doit déclarer un nouvel objet Region, modifier, et ensuite, appeler Graphics.Clip = myNewRegionObjet au lieu de modifier directement Graphics.Clip. C'est très bizarre, car typiquement une référence devrait être passée, et donc la modification de l'objet ne devrait pas poser de problème! Le comportement étrange est décrit ici: http://msdn.microsoft.com/en-us/library/system.drawing.graphics.clip.aspx J'ai changé mon contrôle en conséquence, ce qui a entraîné un plus de dix fois accélération. Maintenant c'est assez rapide. :-) Quelqu'un at-il eu une idée pourquoi la propriété Graphics.Clip ne présente que le comportement bizarre?

+0

vous utilisez Visual Studio? –

+0

oui, vs 2008 professionnel – meanandvicious

+2

Cochez cette question: http: // stackoverflow.com/questions/308816/any-good-free-net-profiler –

Répondre

4

Beaucoup de les profileurs complets ont des produits d'essai limités dans le temps avec toutes les fonctionnalités. Si vous n'en avez besoin que pour quelques semaines, je chercherais quelque chose comme dotTrace de JetBrains. En fait, dotTrace 4.0 est toujours en version bêta, et j'ai le sentiment que tant qu'il est encore en version bêta, vous pouvez continuer à le télécharger et obtenir une période d'essai plus longue qu'avec le produit officiel, bien que de toute évidence il peut avoir quelques problèmes bêta.

+0

Je vais en second lieu (4?) DotTrace - impressionnant peu de kit, se sent comme un produit Redgate. – annakata

-3

FxCop de Microsoft est gratuit et, je pense, pas difficile; Pour de plus amples informations, voir: http://msdn.microsoft.com/en-us/library/bb429476(VS.80).aspx et voir des exemples ici: http://www.nikhilk.net/Ajax-FxCop.aspx

+2

Dans quel sens FxCop est-il un profileur? –

+0

FXCop n'est pas un profileur, c'est un analyseur de code qui vous aide à appliquer les normes de codage. –

+0

FxCop vérifie simplement que le code est conforme aux directives de conception MS, ce n'est pas un profileur de code ... – Longball27

0

Hmm ... Je pense que profileurs ont été notés assez :-) mais utilisez-vous WPF? c'est beaucoup plus performant que les formes de fenêtres. spécialement lorsque vous avez beaucoup d'objets en surface.

+0

J'utilise des formulaires Windows. – meanandvicious

+0

puis essayez de basculer. au moins pour ce contrôle. ma performance de dessin a frappé le toit, quand je suis passé juste pour mes contrôles intensifs d'objet. – cRichter

1

Il existe des versions d'essai gratuites de nombreux profileurs.

ANTS est facile à utiliser AQtime a plus de fonctionnalités EQATech - ne sont pas utilisés

Questions connexes