Pergunta

Quero chamar uma função da classe executiva a cada 2 horas. Não estou mantendo nenhuma maneira de implementar o mesmo em C/C ++ sem usar um loop enquanto. Meu problema é que não posso usar enquanto (1), pois isso não retomou o controle para uma execução adicional.

Qualquer ponteiro nesse sentido, seja útil .... :)

Thnaks

Foi útil?

Solução

Na pior C, eu teria considerado usar o alarm(2) ou setitimer(2) funções. Como alternativa, gera um fio e faça a espera a partir daí.

Se você decidir sobre as rotas de alarme ou setitimer, lembre poucas coisas de dentro de um manipulador de sinal.

Outras dicas

Boost.asio fornece Timers.

Para uma solução geral, você pode iniciar um tópico, que envia alguma mensagem para o tópico principal após 2 horas.

Para o Linux, você pode usar isso:

http://linux.die.net/man/3/Alarm

e depois lide com o sinal SigalRM

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top