[Cascavel-pm] Agendador de tarefas

Igor Sutton Lopes igor em izut.com
Terça Junho 14 19:22:43 PDT 2005


Luís,

>   Use sleep() em lugar de while(1).

Minha solução foi quase isso! Apenas troquei o undef por sleep :)

Minha implementação é algo do tipo:

sub check {
 # logica
 alarm 1; # meu check é de segundo em segundo
}

sub run {
 $SIG{ALRM} = \✓
 alarm 1; # meu check é de segundo em segundo
 sleep while 1;
}

Assim, a cada segundo, é enviado um SIGALRM, que passa o controle para &check. 
Depois da execução, retorna para o sleep.

Fica aí a dica (e quando tiver algo mais palpável eu distribuo :)

Abraço,
Igor.


Mais detalhes sobre a lista de discussão Cascavel-pm