Tämä liittyy jonkin verran gdb-asetettuun korvaavaan kirjautumiseen pitäisi korvata gdb.txt oikein? .

Annetaan sanoa, että suoritan jonkin sovelluksen istunnon. Otan esimerkiksi qbittorrentin esimerkin uudelleen.

/ vie liikaa aikaa tai yksinkertaisesti ei vastaa.

Sitten ainoa vaihtoehto, joka jää minulle, on käyttää CTRL+C, joka, jos ymmärrän oikein, tappaa taustalla olevan sovelluksen , esimerkissämme qbittorrent ja voin sitten lopettaa gdb: n

(gdb) quit 

Onko / olisiko muuta tapaa lopettaa sovellus ja antaa gdb-istunto jatkuu tai ainoa tapa on edellä mainittu karkea tapa.

AFAI tietää, että hakuprosessin tappamisen pitäisi olla viimeinen eikä ensimmäinen ratkaisu.

Kommentit

  • Kun suoritat oletusasetusten gdb -kohdassa, Ctrl-C ei tappaa sovellusta, vaan vain murtautuu virheenkorjaimeen, jossa voit päättää mitä tehdä. Käytä cont -näppäintä " niele signaali ", ja sovellus jatkaa häiriöttömästi. Tai käytä signal 2 siirtääksesi SIGINT (2) sovellukseen. Tai tappaa sovellus käyttämällä kill.

Vastaa

Voit käyttää tähän signaaleja. Ennen kuin aloitat ohjelman, määritä USR1 tai USR2 rikkomaan gdb vaikuttamatta ohjelma:

handle SIGUSR1 nopass 

Sitten voit suorittaa ohjelman ja suorittaa lopetuksen suorittamalla kill -USR1 toinen kuori sopivalla (lapsi) pid. gdb keskeyttää sovelluksen, ja voit sitten lisätä katkaisupisteitä, tutkia tilaa jne. ja jos haluat, jatka suorittamista cont.

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *