Bonjour,
est il vrai que les exceptions plombe les performance d'un code?
merci
Bonjour,
est il vrai que les exceptions plombe les performance d'un code?
merci
je sais pas exactement, mais on peut penser que oui car instruction en plus = temps en plus... Mais bon c'est pas non plus un calcul matricielle...
mais meme si c'était faux, un code qui devrait générer des exceptions et qui ne le fais pas, ne sers pas a grand choses à mon avis...
En gros, il y a differentes techniques pour implementer les exceptions. Elles offrent des compromis differents entre "surcout du a la possibilite d'avoir des exceptions quand il n'y a pas d'exception" et "cout de l'exception quand elle est presente". Une technique en particulier permet d'avoir un surcout en l'absence d'exception quasiment nul (des effets indirects sur les optimisations).
Certains OS ont aussi une notion d'exception. Lier les exceptions du C++ a celle de l'OS a alors des avantages -- compatibilite interlangage plus forte par exemple -- mais aussi des inconveniants -- on ne peut pas utiliser le compromis qu'on voudrait, parfois il existe pour le C++ des methodes qui sont meilleures sur les deux tableaux.
Naturellement, il faut comparer le cout des exceptions avec celui des alternatives qui ne sont pas gratuites non plus.
Ma question et pour la gestion d'erreur dans mes class. Comme il y as plusieurs philosophie de gestion d'erreur, je me demandé si les exeption sont lent ou non.Envoyé par ZaaN
Tu as tant d'erreurs exceptionnelles que ca pour que les exceptions aient un impact significatif sur les performances de ton logiciel ?
http://gamearchitect.net/Articles/Ex...rrorCodes.html
C'est plus pour de la culture générale.Envoyé par Aurelien.Regat-Barrel
Avant de dire "les exeptions c'est cool", c'est bien de le savoir pourquoi. Et quand se sont les perf (lancer de rayon, traitement image ...) qui rentre en jeux, ça peut jouer sur la philosophie utilisé pour les erreurs.
merci pour le lien
Voir ce fil très poussé sur comp.lang.c++.moderated
http://groups.google.com/group/comp....4c9b3e3509403/
Certaines implémentations n'ont aucun coût en performance dans le cas où aucune erreur ne survient (quand aucune exception n'est levée).
Ce qui signifie donc que c'est plus performant que des if/else et valeurs de retour dans ce cas.
D'après le thread que je viens de mentionner, on peut même avoir un surcoût parfaitement nul, du moins en temps d'exécution.Une technique en particulier permet d'avoir un surcout en l'absence d'exception quasiment nul (des effets indirects sur les optimisations).
Partager