TaskScheduler的分析_1

 


 

 

 

 

 

以上是TaskScheduler的成员函数,interalErro是负责处理内部错误的,在里面直接掉调用abrot()返回就完了,turnOnBackgroundReadHandleing(..)和turnOffBackgroundReadHandleing是用于向后兼容的一般不会调用,里面只是调用了其他的函数而已。doEventLoop(...)是负责循环处理事件的,在这里暂且不考虑,然后除了析构函数和构造函数 里面就剩下了9个函数。分别是:

scheduleDelayedTask,unscheduleDelayedTask,rescheduleDelayedTask;

setBackgroundHandleing,disableBackgroundHandling,moveSocketHandling;

createEventTrigger,deleteEventTrigger,triggerEvent;

以上是3组函数,不难看出 这3组函数在结构上是类似的,其实再进一步观察 可以看到以上操作基本都是对 几个容器的操作,在这里我们假设在TaskScheduler的子类中有3个链表,list1,list2,list3,那么以上3组操作就是对这3个链表进行的操作:

每组中第一个操作是插入操作,

每组中第二个操作是删除操作,

每组中第三个操作是替换操作。

(第3组除外,因为第三组中第三个函数 triggerEvent从函数模式上来看,应该是对链表中的某个节点进行处理)。以上是对TaskScheduler的初步分析,后面准备结合BasicTaskScheduler进一步分析,以上函数的具体实现过程 和 TaskScheduler在整个live55中起的作用。

 

 


 

发布了51 篇原创文章 · 获赞 0 · 访问量 6万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览