Ecco il report Valgring:Come individuare una mancata corrispondenza libera/eliminazione riportata da Valgrind in un programma con multithreading?
==14546== Thread 5:
==14546== Invalid free()/delete/delete[]
==14546== at 0x490555D: free (vg_replace_malloc.c:235)
==14546== by 0x3BF7EFAA8F: free_mem (in /lib64/tls/libc-2.3.4.so)
==14546== by 0x3BF7EFA581: __libc_freeres (in /lib64/tls/libc-2.3.4.so)
==14546== by 0x4802676: _vgw_freeres (vg_preloaded.c:62)
==14546== Address 0x4DC4EE0 is not stack'd, malloc'd or (recently) free'd
Come posso sapere quale filo è come il numero di thread di esecuzione varia da una all'altra? L'aiuto assigning names to my threads sarà qui?
EDIT: Non penso che lo sarà, come indicato nella sezione DRD del manuale.
Sto usando valgrind-3.1.1 su Linux Enterprise AS4 Red Hat.
Grazie, ho già generato un'immagine del mio processo e invoco gdb "indirizzo info" e ora anche "simbolo informazioni" senza fortuna fino ad ora. – philant