网上的蜘蛛
分类: 系统运维
2008-07-25 16:05:47
/*===============================================================
例如你设计路由层协议的时候,需要周期性更新缓存,这就需要这种操作
----------------------------------------------------------------*/
1.设计handler类
class MobiHandler : public Handler {
public:
MobiHandler(RouteCache *C,double itv) {
interval = itv;
cache = C;
}
void start() {
Scheduler::instance().schedule(this, &intr, interval);
}
void handle(Event *e);
private:
double interval; //周期
Event intr;
RouteCache *cache;//一定要要有哦
};
2.定义实现handler()函数
其中在routecach中的定义handle()的代码如下
MobiHandler::handle(Event *intr) {
cache->periodic_checkCache();
Scheduler::instance().schedule(this, intr, interval);
}
3.使用计时方法
MobiHandler mh;
mh.start();