Participer au site avec un Tip
Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Accès rapide :






Vous êtes un professionnel et vous avez besoin d'une formation ?

Programmation Java
Les fondamentaux


Voir le programme détaillé
ESN Inovelya : Nous recrutons
<h1>Valgrind - Dominique Liard - 2012 .. 2025</h1> <p>Les autres outils de la distribution Valgrind : Helgrind : pour la détection d'erreurs dans vos threads</p> <p>Exemple de déverrouillage d'un mutex non verrouillé : static pthread_mutex_t cs_mutex = PTHREAD_MUTEX_INITIALIZER; void* threadRoutine ( void* arg ) { //pthread_mutex_lock( &cs_mutex ); sharedCounter = sharedCounter + 1; pthread_mutex_unlock( &cs_mutex ); return NULL; } Affichage de Helgrind : ==2546== Thread #2 unlocked an invalid lock at 0x600F40 ==2546== at 0x4A073C1: pthread_mutex_unlock (hg_intercepts.c:578) ==2546== by 0x40085B: threadRoutine(void*) (PosixThreads.cpp:14) ==2546== by 0x4A06AE3: mythread_wrapper (hg_intercepts.c:201) ==2546== by 0x3CFC806D5A: start_thread (in /lib64/libpthread-2.12.90.so) ==2546== by 0x3CFC4E4A7C: clone (in /lib64/libc-2.12.90.so)</p> Diapositive précédente Diapositive suivante