Basta digitar o GDB na janela do terminal para acessar o GDB do seu sistema operacional no Ubuntu ou em qualquer outro sistema operacional baseado em Linux ou Unix. A captura de tela do comando gdb é mostrada na ilustração a seguir. Ele mostra os detalhes de direitos autorais do GDB. O prompt aberto do GDB indica as informações sobre quando está preparado para aceitar comandos. Em algumas configurações do GDB em que o sistema operacional permite os threads, esses recursos ainda não estão acessíveis. Essas instruções não têm impacto no GDB que não permite rosquear. Por exemplo, um sistema que não possui um suporte de thread ignora o resultado da consulta de "threads de informações" e ignora consistentemente a instrução de thread.
Você só precisa digitar o comando "Quit" no terminal GDB para sair e encerrar sua sessão atual do GDB. Você pode ver a instrução Quit no depurador do GDB, como mostrado no seguinte:
O depurador do GDB criou muitos comandos depuradores. Aqui estão alguns comandos de amostra listados que podemos tentar usar o depurador do GDB:
Exemplo:
Aqui está um pequeno pedaço de código que usa vários threads, os cria com o método pthread_create e passa os métodos dos threads. O programa de amostra tem uma função principal () que cria dois tópicos na ilustração a seguir. Agora existem três tópicos em execução, incluindo o thread pai/original (original). A função Main () usa a função pthread_create () para criar os threads e chamá -los um após o outro.
O loop while é verificado no código a seguir para ver se o valor da variável Count1 é menor que 500. Se for, a declaração de impressão é executada para exibir uma string "Thread 1 está em execução" ao lado da variável de contagem. O tópico é unido imediatamente após o uso do comando pthread_ junção ().
Use os seguintes comandos listados para compilar o código usando o compilador GCC e visualize a atividade do Thread com o depurador do PIB. A imagem a seguir é uma captura de tela que mostra que o código anterior é compilado com sucesso:
GCC -G Multithreads.C -O Multithreads -lPtHread
Ao usar o Ubuntu 20.04 Sistema, digite o seguinte comando na tela do terminal para ver e examinar o tópico.
$ GDB ./Multithreads
Agora, estamos no modo de depuração do GDB, graças à janela do terminal. Para estabelecer os pontos de interrupção no principal, use o Thread Two e Thread três rotinas de cada thread recém -formado. Para inserir um ponto de interrupção, usamos o seguinte código listado. É um comando simples; Basta digitar o intervalo. Depois disso, escreva o nome dos métodos de thread para inserir os pontos de interrupção. Este método exibe o número da linha em que os pontos de interrupção foram adicionados após a entrada.
Para executar o programa, use a palavra -chave "run" ou simples "r" como um comando na tela do terminal. Uma visão geral dos tópicos do programa e algumas informações sobre sua condição atual são fornecidas pelos tópicos de informações de comando, pois você deve tomar nota de. Houve apenas um tópico iniciado neste caso até agora.
A execução deve continuar usando o seguinte comando:
Mais dois tópicos começam neste lugar. O tópico que está atualmente em foco é denotado por uma estrela. Além disso, o ponto de interrupção definido para os threads recém -formados em seus métodos de inicialização é alcançado - Thread dois () e Thread Three (), especificamente. Use o comando para mover o foco para outro tópico antes de iniciar uma depuração de thread real. Na linha 17 do seu thread de função dois, o thread 2 () é interrompido.
De acordo com a saída dos "threads de informações", thread dois imprime brevemente o balcão contagem2 e depois sai do Thread 2 na linha 17. Da mesma forma, podemos operar o thread "Thread_three" usando uma maneira bastante semelhante que utilizamos para o thread_two.
Conclusão
Para resumir, finalmente podemos usar o depurador do GDB em nosso Ubuntu 20.04 Sistema Linux. Para isso, explicamos seu uso no parágrafo introdutório e listamos alguns dos principais recursos que nos são fornecidos e o tornamos um depurador único.