一个定时器队列
实现了一个高性能的定时器队列处理系统,基本的实现思路是把所有的定时器请求按超时的前后顺序排入队列中,然后不断的查看是否开始的定时器超时已经到达,如果到达则调用回调处理函数。
这个定时器队列依赖于时间处理的函数和线程,这两个都是平台相关的,不过幸运的是我把他们包装起来了,也就意味着这儿有一个简单的线程包装库。同时有一个小小的可用的可池化的线程的实现。
- 16:38
- 浏览 (199)
- 评论 (0)
只适合在Windows系统下[包括WinCE]使用。主要是因为依赖于Windows平台的CString和FindFirstFile、FindNextFile以及FindClose系列函数。其实对于CString的依赖并不是必要的,只是方便了Find*系列函数的调用而已。
examples里面是一些使用这个简单遍历器的例子。包括删除目录中所有文件,复制到另一个目录,生成vector或者一个别的表达等等。
StringOp实现了std::string和CString之间的转换。
当然,我知道,boost实现了一个更漂亮的目录访问器,并且显然功能更强,适应性更好,但是由于我想到我仍然不得不在自 ...
- 15:46
- 浏览 (206)
- 评论 (0)
有限状态机
实现了一个确定型的有限状态机,可以向它注册状态跃迁规则和动作,然后在事件发生的时候通知它,别的都由它实现了。动作的原型是一个void (*)(void* params)的函数指针。
FSM的实现不依赖于任何超越标准C++的内容,也就是说,它可以使用在任何支持标准C++的环境中。顺便说一下,我在WinCE和Windows上都使用过它。
HTML2TEXT
一 个简单的例子使用有限状态机,它能够实现快速的把HTML文件转换为TEXT文件,具体的说,就是把标签(头尾tag)去掉,同时其属性也被去掉,把注释 内容去掉,把脚本和内嵌样式单中的内容去掉,把实体引用转换为实体代表 ...
- 13:33
- 浏览 (184)
- 评论 (0)







评论排行榜