Pergunta

O que eu estou procurando é uma fila simples temporizador, possivelmente com uma fonte de temporização externa e um método de pesquisa (neste modo, será multi-plataforma). Cada mensagem enfileirado poderia ser um objeto implementando uma interface simples com uma função de membro virtual onTimer().

Foi útil?

Solução

Boost::ASIO contém uma implementação temporizador assíncrono. Isso pode funcionar para você.

Outras dicas

Há um artigo agradável em CodeProject, aqui , que descreve o vários temporizadores disponíveis no Windows, e tem capítulos intitulado "timers fila" e "Faça o seu próprio temporizador".

Para independência de plataforma, você teria que fazer implementações para as diferentes plataformas dentro pares #ifdef -- #endif. Eu posso ver nada menos feio do que isso.

Ele não se encaixa todos os seus critérios, mas ... Eu escrevi uma série de posts sobre uma fila de temporizador para Windows que é implementado em termos de um provedor de tempo externa e que é ou consultados ou conduzido por um fio . A série é fornecido com o código-fonte e testes e o ponto de que foi demonstrar o teste de código razoavelmente complexo. De qualquer forma, você pode ser capaz de fazer uso de algum código ou idéias se ninguém vem com um ajuste melhor.

Artigos comece aqui: http://www.lenholgate.com/archives/000306.html

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