none
Execução de tarefas por tempo determinado RRS feed

  • Pergunta

  •  

    Pessoal alguem ai poderia me ajudar com esta dúvida...

    Estou tentando fazer com que uma tarefa execute de 5 em 5 segundos por exemplo, mas estou com dificuldade para trabalhar com as funções de tempo, existe uma função simples para executar por exemplo uma espera de 5 segundos no programa?

     

    Já agradeço de antecipadamente!!!

     

    reineto8

    quarta-feira, 30 de abril de 2008 02:12

Respostas

  • Se o seu aplicativo é gráfico, e voce possui uma janela, com WndProc, voce pode usar a função SetTimer(..) e interceptar a mensagem WM_TIMER.

     

    Agora se o seu aplicativo é do tipo console, voce pode criar uma thread, e nela executar suas tarefas, e coloca-la para 'dormir' (sleep(..)) no tempo resultante da diferença do inicio da execução até o final e os 5 segundos.

     

    Se voce fornecer mais detalhes da sua aplicação, podemos te ajudar melhor.. Mas esses dois métodos já te atenderiam. Sendo o primeiro mais fácil de implementar, mas depende do tipo da sua aplicação.

     

    Abraços, cox

     

    quarta-feira, 30 de abril de 2008 02:48

Todas as Respostas

  • Se o seu aplicativo é gráfico, e voce possui uma janela, com WndProc, voce pode usar a função SetTimer(..) e interceptar a mensagem WM_TIMER.

     

    Agora se o seu aplicativo é do tipo console, voce pode criar uma thread, e nela executar suas tarefas, e coloca-la para 'dormir' (sleep(..)) no tempo resultante da diferença do inicio da execução até o final e os 5 segundos.

     

    Se voce fornecer mais detalhes da sua aplicação, podemos te ajudar melhor.. Mas esses dois métodos já te atenderiam. Sendo o primeiro mais fácil de implementar, mas depende do tipo da sua aplicação.

     

    Abraços, cox

     

    quarta-feira, 30 de abril de 2008 02:48
  • Se a aplicação não tiver janela, ou loop de processamento de eventos. Ou ainda, mesmo tendo o loop, se tiver que processar muita coisa dentro deste loop, eu recomendaria usar uma Thread para fazer isto.

     

    Talvez a maneira mais simples e ainda eficaz seja deixar um laço na thread, com um Sleep() aguardando o tempo que falta completar os 5 segundos (5s-tempo de execução da tarefa desejada).

     

    Bira

     

     

    quinta-feira, 1 de maio de 2008 23:42
  •  

    Então pessoal.....

    Minha aplicação é simples é uma janela que executa uma atualização de 5 em 5 segundos, acredito que a forma mais simples seja o Sleep() mesmo...

    Valeu pessoal pelas dicas!!!

     

    reineto8

    sexta-feira, 2 de maio de 2008 00:57