Conception: stocker les pointeurs de fonction
Bonjour tout le monde !
Désolé, je n'ai pas trouvé de titre plus explicite...
Dans le cadre d'une application assez grosse, j'aimerai me créer une classe qui me permette de faire du profiling "à ma sauce". Pour X raisons que je ne détaillerais pas, il ne m'est en effet pas possible d'exploiter des outils existants.
Mesurer le temps pris par une fonction est une chose, savoir combien de fois cette fonction est appelée en est une autre.
Imaginons ceci:
Code:
1 2 3 4 5 6
| main()
{
fonction1();
fonction2();
fonction1():
} |
Avec par exemple:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| fonction1()
{
profiler.start();
// code de fonction1
profiler.stop();
}
fonction2()
{
profiler.start();
// code de fonction2
profiler.stop();
} |
En imaginant bien sûr que profiler est la classe, j'aimerais que celle-ci me sorte le nombre d'appels à chacune des fonctions. Pour cela, comment faire dans le code ? Stocker le pointeur de chaque fonction ? Je ne sais pas du tout...
Merci d'essayer de m'aider, déjà je pourrais essayer de mieux expliquer si nécessaire ! :)