SIGUSR1 está sendo ignorado ao iniciar o binário do comando system ()

0

Eu tento usar o SIGUSR1 com timer. Ele funciona bem ao iniciar o binário a partir da linha de comando. Mas se eu iniciar o mesmo binário do comando system () de outro aplicativo, o SIGUSR1 será ignorado.

Eu não quero ignorar o sinal SIGUSR1 . Como resolver esse problema com signal () ou sigaction ()?

    
por ravibhuva9955 16.05.2014 / 08:12

1 resposta

2

Lembre-se de que o ambiente (incluindo sinais bloqueados ou desativados) é herdado do processo pai.

Se você está falando de um executável binário que você controla, então você pode codificá-lo para (re) ativar todos e quaisquer sinais.

Se você não fizer isso, então talvez você possa escrever um programa wrapper que execute ao invés de ativar os sinais apropriados e iniciar o executável.

    
por 16.05.2014 / 08:31