00:00
好,下面呢,我们讲一下这个计数器的一个应用啊。啊,计数器,计数器大家可能。我这么一说可能想不到啊,我们学没学过这个计数器呢?哎,来看一下这个控制台上,控制台上你看它最终打印完之后。是不都记了好多数啊?之前我们在讲这个commander的时候,是不是看过一个。啊干过一回,比如说这个迈一步的是输入了六个数啊输出了。六个记录啊,牙龈菩萨切片啊,这么多之节。等等,失败了,失败的次数为零,Word map不得为零啊,GC为零啊等等,其实这些数据怎么来的?他怎么统计的呢?你想过?其实呢,他就是通过计数器这种手段啊,记录下来,然后把这些数据呢,汇总到这个工台上进行一个打印啊。再看一下实现计数器的进入方式。
01:03
I为维护,为每个作业维护若干内置计数器,以描述多项指标啊。为了记住了啊。呃,例如某些计数,计数器记录已处理的直接数。啊和技术数。使用户呢,可以监控。已处理的输入数据量和已输出的数据量。再看有点晕是吧,其实呢,它是一个调试的一个非常重要的一个手段。在这个你开发过程当中,调试的手段有这么几个。一半吧。你爸爸可以解决很多问题,这主要是针对的是单线程。那么呢,如果是多线程问题。哎,多建成的时候就得采用这种计数器打log。么记住每一个分支它是怎么走的,比如说你看啊这程序。这个程序在下面分了好多支啊。
02:01
下面又少了好多只。这下面又封了那另一个,另一个线程又封了好多只。啊,放了这么多场。那你在调试的过程当中怎么去做呢?你要记录一下他程序是怎么走的。它是走的外边最外边的分支,还是走的这条分支。什么等等,靠什么?哎,就可以靠这种计数器的手段。打印一些变量的一些值。回头的话有机会给大家去尝试一下啊,非常有用。这是计数器的API,采用枚举的方式统计计数。允许讲了吧。肯定都讲了哈,这是呢,定义了一个枚举变量啊,这里面有相应的这个值啊,现在。那么这个计数器如何使用呢?Contest。全局上下文啊。通过它点get。
03:00
获取数量。然后呢,这里面就是你这个枚举的具体的值了。你这个枚举写成什么值,那最终在公台上打印的时候,他就会将这个值啊,姓名,比如说是他,然后出现了多少次那。你这只要是increment后面一个一,那就是加了意思。啊,你写个二,那就加两次。程序走到这,每走到这一次就定时的加一次。那就在这个变量上加了。在控制台上就能看到他哈。再往下采用计数器组,计数器名称的方式统计啊,这种方式比较常见啊,也就是说呢,我在计数过程当中呢,我对你这个啊分了一个组。比如说这个呢,是map阶段的主。啊,还可以分一个阶段的。啊,那map鸡蛋里面又分了细的相应的活,Map鸡蛋呢,有这个S的过程啊,有RA的阶的read的阶段过程,Map鸡蛋过程。扎的过程啊。Word合并的过程。然后这个过程当中某一个值增加。
04:01
啊,执行一次增加一,执行一次增加一。呃,这个组名和计数器的名称,这个是你随便写的,但是呢,一定要有意义。怕别人看不懂。不合适哈,这是计数器。呃,技术结果在程序运行后,在控制台上查。看啊,在控制台上去查看。OK,那下面呢,这个进入器这个案例实操呢,是在我们后面的一个升级清洗案例里面会有使用啊。这是记数器。
我来说两句