Bonjour,
Actuellement je dois travailler sur l'évolution d'une application d'entreprise et je dois tout d'abord m'approprier son fonctionnement.
J'ai donc décidé de la déboguer avec GDB pour tenter de la comprendre.
Le problème, c'est que GDB saute certaines lignes qui pourtant devraient être atteintes.
De plus, certaines de ces lignes de code affectent une valeur à une variable, et quand je vérifie la valeur de la variable après le saut de ligne je constate que la valeur n'a toujours pas été affectée, ce qui prouve que GDB a vraiment sauté les instructions.
Or je sais que ces lignes décrivent une communication avec d'autres threads par le thread principal (impossible d'être plus précis car je ne connais pas bien l'application).
Alors, voici ma question : est-ce que le multithreading implique un comportement anormal du débogueur GDB ? Cela explique-t-il ces sauts de lignes impertinents ?
Je ne pense pas que cela vienne du fait que mon exécutable ne corresponde pas avec mes sources : en effet, en exécutant list je constate que GDB "voit" aussi les lignes qu'il a sautées.
Merci pour votre aide qui me sera certainement précieuse !
Partager