温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
好,咱们看完低水位线之后呢,对应的来找一下高水位线啊,呃,我们刚才呢,看到它这个低水位线里面的这个,呃,代码呀,跟高水位线的代码呢,它不在一起啊,它不在一起,当然呢,它这个类还是同样都属于这个memory的flash都是这个类啊,在这个类里面除了有is above low watermark啊有这个低水位线之外呢,你CTRL加F12这里面呢,它还会有一个方法叫判断高水位线啊,在这个上面is。嗨,Water mark对不对啊,这就是判断高水位线的方法,那对应的呢,它会在呃,触发高水位线的时候呢,进行一定的一个响应啊,他不是说了吗,有一定的限制啊,其实限制呢,就是不要再往里面写数据了,怎么样让他不要往里面写数据呢?哎,你对来找一下CTRLCCTRLFCTRV。我们来找一下谁调用了这个方法,就知道它是在哪个线程里面去使用的这么一个高水位线了啊,怎么判断高水位线,就是没有那个95%总的一个内存嘛,啊对应往下来找一下。
01:07
这里呢,是监控这个刷写的一个类型啊,进行一个判断啊刷写请求我们继续往下。好,继续往下呢,我们可以看到啊,这个地方呢,它就开始去监控这么一个是否为高水位线了,对不对啊,那如果监控呢,是高水位线,它会进行1T的一个判断,在这里面又判断了一次啊,那如果是高水位线会怎么样呢?它其实直接就写到了这个对应的位置里面啊,在下面的地方呢,如果是高水位线啊,它会有对应的一个睡五秒钟啊,它会对应的睡五秒钟啊,如何控制不要它往里面写数据呢?它这里面写了,他说我们应该啊让他一直睡下去啊,一直等到呢。这这个脱离了危险期啊,高水位线不是容易那个决堤嘛,对吧?啊,一直等到脱离危险期再把它给唤醒啊,但是呢,可能会有一个bug啊,你让他睡眠呢,可能有一个bug,那边的可能叫不醒它,所以这里呢,我们设置一个时间啊,超时时间超过五秒钟还没有唤醒,一般刷鞋啊,它就不需要用这么长时间的五秒了啊,如果五秒还没有唤醒呢,就自动让它起来就可以了啊来避免这么一个bug啊,如何解决呢?哎,也没有大家想象的这么麻烦,对不对,除了打印一些日志之外啊,他真的就是睡五秒钟就解决了这个事情了,对吧?哎,你解决不了问题交给时间啊,等一会儿他自然而然的就解决了,对吧,有点像我们的重启大法啊好,那这个整个下来呢,就是我们的诶,由控制总的内存大小来进行了一个刷写时机啊,可以看得出来啊呃,写缓存这部分内存呢,控制是非常的精细的啊,95%的使用开始进行刷写100%了,就不要再往里面写了啊。
02:50
控制的非常的准确,就是因为啊这部分数据呢非常的重要,那我们主要的刷写时机呢,就是由前两个组成的,主要的刷写时机就是由前两个组成的,一个呢是内存大小128兆啊,它应该是按照块大小效率是最高的,上面这个条件呢,是用于你的资源是足够的,就是你h base的内存非常的充足。
03:15
对吧,如果你非常的充足的话呢,它不会出现内存溢出的情况,如果不出现内存溢出的情况,我尽量按照效率最高来进行刷写什么时候效率最高,往h Di上面写的时候块大小效率最高,对吧?尽量按照效率最高来,但是呢,多数情况下你的资源啊,没有这么充足,往后咱们一讲你就知道为啥没那么充足了,因为你的region分区太多了啊,咱们后面会讲好,如果你不那么充足的话呢,我们写的时候都是按照。懂得啊,写缓存的大小来进行刷写的,其实下面这个条件呢,可能反倒呢用的比上面的还要多,不过呢,要看情况啊,要看情况,看你们对应的表格数量,Memory写换人的数量,跟这个对应的你分配给h base的内存大小啊来决定。
04:05
好,这是我们高水位线的一个介绍啊。
我来说两句