章节列表

任务延时队列

2018-01-12 09:42:05 +0000 李述铜

前一节课时中,我们学习了双向链表数据结构。现在,我们在这节课时中将应用这一结构。

在这节课时中,定义了一个用于管理延时任务的链表,所有需要延时的任务都会插入到这个链表。在后面的课程中我们还可以看到,双向链表还可以用于调度器的多优先级队列、任务等待队列等应用。

主要内容

课程中主要涉及四个要点:

  • 定义延时队列
  • tTimeTaskWait()将任务插入延时队列
  • tTimeWakeUp()将任务从延时队列中移除
  • tTimeSystemTickHandler()中遍历整个延时列表,对延时队列进行管理。

在学习过程中,请结合以下两幅图,理解上面三种接口在执行过程中,任务怎样在就绪表和延时队列间转移。

重点难点

注意事项

常见问题