温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
各位同学大家好,我们继续通过上一讲,我们明白了future接口作为一种异步任务接口,可以为主线程开一个分支任务,对吧?然后呢,我们继续讲课,班长给我买水,两全其美,两不耽搁,我们的主线程并没有受到影响,主任务并没有中断,那么对于我们这样费时费力耗费精力的事情,我们单独起一个线程去为我们完成,尽量不要打断我们的主干业务。好,那么对于future接口,我们有一个常用的实现类future task来专门处理异步任务,因为接口必然要有实现类的理念,必然要有落地的实现,那么下面我们来看一下future接口。他到底能干些什么来?注意JAVA5就已经有的,它不是什么新知识,目前主流是JAVA8,已经出道了JAVA17,所以这个呢是非常重要的基础知识,那么它提供了一种异步注意并行计算的功能。
01:00
如果主线程需要执行一个很耗时集团任务,那么我们就把这些耗时费力的单独包装成一个future,把这个任务放到异步线程当中去执行,班长去买水,那么主线程继续处理其他任务,或者先行结束,最终我们再通过future获取你这个支线任务最终的计算结果,那么我们接下来呢?理论完成了,我们来说说这些接口与future task相关的关联。那么able接口接口、future接口与相对应的future task他们是怎么来的?那么最终我们的目的,异步多线程的任务执行了以后要有反回结果三个特点。多线程,想想Java里面怎么获得一个多线程,第二个要有返回值,第三个还是个异步任务。那么班长。为老师去买水,作为新启动的一个异步多线程任务,买到水且返回,好,那么同学们我们下接下来呢,我们来看一下啊。换以前我们都晓得假设啊,My threads。
02:03
Reel。好,那么各位听我们大家都清楚啊,这是我们的什么第一个。MY实现了我们的接口,OK吧,好,那么第二个,现在再来看我们的MY。Thread。接口。假设这是。好,那么各位同学。在这块的时候。我们搂他一眼。大家请看。这两个接口有什么区别?很简单,肉眼可见,第一个。这个接口实现的是run方法,这个接口实现的是扩方法。这个接口没有返回值啊,C接口有返回值啊,这个接口并没有抛异常,这个接口会抛出异常,OK,那么是否有返回值啊,是否抛异常就是runable接口和able接口,它们最根本的特征,那么好,结合我们的笔记,我们可以看到要有三个特点。什么东。
03:08
异步任务作为一个什么?多线程去执行,把这个任务放到异步线程中,那么首先它要是个线程,而且第二个要有返回,我们可以对比一下,要有返回的话,谁才有返回,只有cable接口才有一个返回,有return,但runable接口是VO,没有返回的。那么此时我们会碰到一个什么问题呢?打开我们的Java API,各位同学可以发现这是我们的Java class,线程内回到我们的构造方法。
我来说两句