class CTimeoutTask :public IdleTask;
每个CTimeoutTask 相当于一个定时器.
SetIdleTimer设置定时期触发时间,CancelTimeout取消定时期,注意idleTask只run一次,重复run多次需要多次调用 SetIdleTimer。每次调用SetIdleTimer都回判断当前task是否已再堆中,如果是,则SetIdleTimer设置失败。而当每一个run触发前,当前task就不会在堆中,因此此时设置SetIdleTimer才能成功。
也就是说设置定时器时不能将一个定时器的所有定时一次性全部设置,正确的方法是先设置一个定时,当该定时触发后,再设置下一个定时,如此重复。
本文介绍了一个名为CTimeoutTask的类,它继承自IdleTask并作为定时任务使用。文章详细解释了如何通过SetIdleTimer来设置定时触发的时间,并强调了在堆中的任务状态对设置定时的影响。
1139

被折叠的 条评论
为什么被折叠?



