next up previous
Next: Exemplo 1: Up: Emissão de um sinal Previous: Utilização do parâmetro pid:

Primitiva alarm()

 #include <unistd.h>
 unsigned int alarm(unsigned int secs)  /* envia um sinal SIGALRM */

Valor de retorno: tempo restante no relógio se já existir um alarme armado anteriormente ou 0 se não exitir. Se o secs for igual a 0, ele retorna o valor do tempo restante no relógio, sem portanto re-armar o alarme.

A primitiva alarm() envia um sinal SIGALRM ao processo chamando após um intervalo de tempo secs (em segundos) passado como argumento, depois reinicia o relógio de alarme. Na chamada da primitiva, o relógio é reiniciado a secs segundos e é decrementado até 0. Esta primitiva pode ser utilizada, por exemplo, para forçar a leitura do teclado dentro de um dado intervalo de tempo. O tratamento do sinal deve estar previsto no programa, senão o processo será finalizado ao recebê-lo.



Celso Alberto Saibel Santos 2000-11-14