00:00
那关于这个。我们run方法里面的核心,一个是select,一个是我们刚才说的process select k呢就给大家分析到这里。最后呢,我们拿点时间来梳理一下为lo作为net核心,它的运行机制,我们看一下。它的流程大概是这样子的,我们看看每次执行SQ的方法都是向都是向队列中添加一个任务。当第一次添加时就就会这个写错了就启动线程执行run方法,而run方法呢,是整个event loop的核心。就像loop的名字一样,循环不停的loop。那么做了哪些事情呢?一个是select。在默认情况下,它是阻塞一秒,如果有定时任务,则在定时任务剩余的时间基础上加一个0.5秒进行阻塞。当执行IQ的方法时,也就是添加任务的时候会唤醒。
01:02
就会干什么呢?唤醒select。防止S组织时间过长,当S返回的时候会调用这个方法对SK进行处理,刚才我们已经追了一下。当process case方法执行结束时,会按照这个地方写错了,应该是L。IO的一个一个比例一个比例执行我们的run or tasks。默认IO任务时间和非默认非IO时间是相同的,所以说根据这个特点呢,我们还可以进行调优。比如非IO任务比较多,那么我们将这个LV的这个lov radio调小一点。这样呢,非IO任务就会。就能执行场景时间,防止队列中队列中积攒过多的任务,好,这就是对我们1LOOP它的整个运行机制的一个梳理。我们就说到这里。
02:02
我们把前面讲解的内容做梳理,打开这里,那我们。从哪里开始梳理呢?上前面我们已经梳理到这儿了。对,是不是已经梳理到China pipeline调度handler,那下面我们接着继续梳理。回到源码。分析的章节。在这对不对。咦,到哪儿去了?这些已经梳理过了。下一个。心跳。Net心跳。服务源码剖析。梳理一下。那首先呢,我们对心跳源码剖析的目的,我们说了一个。说一下为什么要去分析。
03:08
这样子。然后呢,我们就进行源码剖析了,在哪里呢?我们在这块我们先对他说明说net呢提供了三个handler。我们重点分析分析的是idol stage handler对吧。把这个拉过来。源码剖析。先做了说明。先做了说明,然后呢,这边我们还说了一下这三个handler它相应的特点是什么。把图拉过来。是那个图。OK,当有有有了这个图过后呢,我们下一步就做了源码剖析。OK,好,同样给它来个小点。那这段源码剖析实际上就是在这里,是不是我们已经有了我呢?直接把这个表格给各位同学。
04:05
梳理到我们的笔记中。复制一下。然后放在这边来。源码剖析。把格式带上就可以了。紧接着呢,我们又给同学们分析了一下ni核心组件就是even loop,它到底是怎么样去启动它的这一个loop的?也做了相应的分析。这是剖析的目的。然后下面呢,我们就对源码进行剖析了。梳理到这边来。便于同学们今后的阅读。把代码从这拿过来即可,是不是这边啊,我们已经把它整理好了。同样主要是这个图,大家一定要有印象哈,这个图就是大家不要看就是n IO loop,其实它整个体系还是非常复杂的。
05:10
核心的接口或者是内呢,我用红色的框标起来了,大家要特特别留意。标红的这些接口或者是类,好,我们把这个表格翻过来。把格式带上。好,可以啊,也拿过来了,好,同学们,那关于这一块的内容的整理,我们就到这个地方。
我来说两句