Pergunta

Eu tenho um x processo que eu quero verificar se há vazamentos com valgrind. O problema é que x é executado por y e y por sua vez, é executado por z. Eu não posso correr x autônomo porque y e configuração z o ambiente para x, como variáveis ??de ambiente, opções de linha de comando, arquivos necessários pelo x etc.

  1. Existe alguma maneira eu posso dizer valgrind para rodar em z mas para acompanhar quaisquer garfos que encontra e relatá-los também?
  2. Existe alguma maneira eu posso dizer valgrind de seguir todos os garfos mas apenas informar sobre o processo chamado x?
  3. Existe alguma maneira eu posso dizer valgrind para anexar ao processo já em execução, a maneira que eu posso fazer com gdb?

Eu não sei se isso importa, mas estou correndo sob SuSE64 linux e valgrind-2.4.0.

Obrigado!

Foi útil?

Solução

  1. Valgrind segue processos bifurcada quando dada a opção --trace-children=yes.
  2. Você deve ser capaz de conseguir isso usando filtros adequados.
  3. Não. Valgrind engancha o código do módulo de carga utilizando LD_PRELOAD, de modo a fixar um processo de execução não é possível.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top