老化按照超时时间来分可以分为“定长”老化和“不定长”老化。
定长老化:所有的“待老化对象”在“定长”时间后超时。
不定长老化:所有“待老化对象”在“非定长”时间后超时。
对于“定长”老化,其实现最为简单,可以直接按照“老化对象”生成顺序放入链表中,待老化时机到达后进行老化即可;对于“不定长”老化,其实现机制也有很多种,各种性能不同,实现复杂度和资源占用也不同,即便是“定长”老化,也有一定的实现技巧。
表项老化可以采用不同机制进行老化,但其核心是需要外部触发“老化”。
外部触发可以有多种实现方式:定时器触发、报文触发、用户输入触发、其他任何事件、信号等等。
这其中最容易想到的就是定时器触发老化:可以为每个待老化对象建立一个定时器;也可以只建立一个最小老化单元的定时器,每次超时遍历表中信息。对于前者,适用于“待老化对象”数量较少情况,占用资源比后者要多;对于后者,虽然占用资源少,但是如果设计不够精细可能会由于软件处理过多而导致占用CPU过高。
本节只粗略讨论老化中一些基本内容,后面将有详细描述。
阅读(1336) | 评论(0) | 转发(0) |