我正在寻找的是一个简单的计时器队列,可能带有外部定时源和一个轮询方法(这样它将是多平台的)。每个排队的消息都可以是一个实现带有 virtual onTimer()成员函数的简单接口的对象。

有帮助吗?

解决方案

Boost :: ASIO 包含异步计时器实现。这可能对你有用。

其他提示

CodeProject中有一篇很好的文章,这里,描述了Windows中提供的各种计时器,并有标题为“队列计时器”的章节。和“制作你自己的计时器”。

对于平台独立性,您必须在 #ifdef - #endif 对中为不同平台进行实现。我看到的不仅仅是丑陋。

它不符合您的所有条件,但是......我写了一系列关于Windows的计时器队列的博客帖子,这些帖子是根据外部时间提供程序实现的,并且可以轮询或由线程驱动。该系列附带源代码和测试,其重点是演示合理复杂代码的测试。无论如何,如果没有人能够更好地适应你,你或许可以使用一些代码或想法。

文章从这里开始: http://www.lenholgate.com/archives/000306.html

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top