Domanda

Quello che sto cercando è una semplice coda di timer possibilmente con una sorgente di temporizzazione esterna e un metodo di polling (in questo modo sarà multipiattaforma). Ogni messaggio accodato potrebbe essere un oggetto che implementa una semplice interfaccia con una funzione membro virtual onTimer () .

È stato utile?

Soluzione

Boost :: ASIO contiene un'implementazione del timer asincrona. Potrebbe funzionare per te.

Altri suggerimenti

C'è un bell'articolo in CodeProject, qui , che descrive il vari timer disponibili in Windows e ha capitoli intitolati "Timer coda". e " Crea il tuo timer " ;.

Per l'indipendenza della piattaforma, dovresti implementare le diverse piattaforme all'interno delle coppie #ifdef - #endif . Non vedo niente di meno brutto di così.

Non soddisfa tutti i tuoi criteri, ma ... Ho scritto una serie di post sul blog su una coda timer per windows che è implementata in termini di un provider di tempo esterno e che è sottoposta a polling o guidata da un thread . La serie viene fornita con codice sorgente e test e il suo scopo era dimostrare il test di codice ragionevolmente complesso. Ad ogni modo, potresti essere in grado di utilizzare parte del codice o delle idee se nessuno trova una soluzione migliore.

Gli articoli iniziano qui: http://www.lenholgate.com/archives/000306.html

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top