En samtale bunken er av datastruktur komponenten av et dataprogram som holder styr på alle kjørende subrutiner . En subrutine er en del av et større stykke av programvare som utfører en høyt spesialisert oppgave . Subrutiner til slutt konkludere med sin oppgave , og at Kallstakken holder styr på hva subrutiner er ferdig og hvilke som fortsatt er aktiv . Bruke Gnu Debugger ( GDB ) , kan du se samtalen stabelen for et kjørende program . Dette er nyttig for når programmet har en feil , og du må undersøke dypere inn i runtime miljøet for å se hva som går galt . Du trenger
Linux datamaskin med gdb installert
Vis flere instruksjoner
en
start " gdb " for programmet du ønsker å se samtalen bunke . For eksempel , for å starte feilsøking programmet " eksempel" du ville skrive følgende inn i Linux ledeteksten : en
gdb eksempel
2
Kjør en backtrace på programmet . Dette viser en liste over aktive funksjonskall i programmet tråden. Dette er kallet stack, men det er mer du kan gjøre enn bare å vise det. Skriv inn følgende for å starte tilbakesporingen : en
backtrace
3
Observer listen over aktive funksjonskall. Hver og en er innledes med firkanttegn "#" og et nummer. Du kan få tilgang til sine stack rammer gjennom dette nummeret .
4
Observer bunken rammen av en aktiv funksjon samtale . For eksempel , for å vise stabelen rammen for funksjon samtale 3, skriver følgende : en
ramme 3
5
List all informasjon som finnes i denne rammen . Dette gir deg informasjon om subrutine , som kan hjelpe deg å feilsøke programmet .