In einer C ++ - Multithread-Umgebung.Es laufen zwei Threads und das Programm stürzt ab, wenn der zweite Thread versucht, auf etwas zuzugreifen, der Absturz jedoch aufgrund des ersten Threads geschieht. Wie können Sie das mit GDB herausfinden?
Antworten:
2 für die Antwort № 1Benutzen thread 1
und thread 2
(oder t 1
und t 2
) um zwischen den Threads zu wechseln und zu verwenden bt
den Stapel von den beiden verfolgen. Dann drucken Sie eine Variable aus, um zu erraten, welche davon beschädigt ist, nicht initialisiert ist, außer Reichweite usw.
Schauen Sie sich auch die Hilfe an. help threads
gibt dir Hinweise ...
my2c