嗨,大家好,我是麦克,有十四年加我开发价格经验,现在是古法科技的联合创始人。今天来分享一道加我多先生编程中经常会遇到的问题, hornable 和 runnable 接口有什么区别? 这个问题看起来很简单,但是呢,要回答到关键点以及突出个人优势却有一定的难度。我把这个问题完整回答,整理到一个三十五万字的大厂面试指南中,里面有非常详细的文字解析,包含各个一线大厂的高频面试真题,有需要的小伙伴呢,可以在我的评论区的置顶中去免费领取。 当我们谈到加瓦多先生编程啊,无论是在项目开发中还是面试中啊, roundable 和 quality 接口经常会被提到, 这两个接口都代表了可以被现场执行的任务,但他们有一些重要的区别。明白这两者的区别和各自的试用场景对我们进行多线编程非常重要。面试官提出这个问题可能是想要了解 你对于 java 并发编程的理解程度,以及你是否能够根据不同的需求选择合适的工具。回答这个问题的时候,你不仅要明确指出这两个接口的区别,还要能够去给出实际开发供中应该如何选择的建议。下面我们来看一下这个问题的完整回答。 colob 和 runnob 的区别主要有三个方面, runob 接口指定了一个无返回值的乱方法,而 colob 接口呢,定义了一个有返回值的括方法。 所以如果你的执行任务中需要返回计算结果,那么应该使用 collab 接口。 runab 接口的 run 方法不会抛出任何检查型异常,而 collab 接口的扩方法会抛出异常。 所以如果你的任务中可能会出现需要处理的异常,那么 quality 接口将是一个很好的选择。从使用的角度来看, runeable 十一通常和 siri 的对象一起使用,而 quality 接口呢,通常与 execute service 来配合使用,也做现成池。总的来说,如果需要执行一些无需返回结果且不需要处理检查异常的简单任务,软软的接口是一个不错的选择啊。如果你需要执行一些更加复杂的任务,需要获取执行结果或者可能抛出的异常,那么应该选择 cord 接口。 以上就是我对这个问题理解和回答,如果你有任何疑问或者有其他想要了解的编程知识,欢迎在评论区给我留言,我们会在后续的视频中给你解答。如果你觉得今天内容有用,记得点赞分享给你的朋友们。我是麦克,我们下期再见!
粉丝15.6万获赞88.0万

多线程实现 rand 接口三二一开始我创建好了两个类,先实现一个 rand 接口,重写接口中的方法还是声明一个 name, 把多线程的代码写到 rand 方法中,我还是直接写打印语句了, 生成一个有存的构造方法, get 和 set 方法也一块儿写了吧。来看一下这个类怎么启动多线程吧, 这样就启动了一个线程 a, 再来一个线程 b 吧,运行两个线程都启动成功了。线程休眠的方式是一样的, 处理一下这个异常,改大一点可以更明显,看打印的慢了吧,改小点。好了好了,总结来了,记得关注就行。

renabo 和 colabo 的区别? renabo 接口当中的 ran 方法呢,是没有返回值的,而他做的事情只是纯粹的去执行乱方法当中的代码而已。 colabo 接口当中的靠方法 是有返回职的,是一个饭型,和我们的 future future task 配合,可以用来获取我们义不执行的结果。这个其实是一个非常有用的特性,因为多县城比单县城更难更复杂,有一个更重要的原因就是因为多县城 充满着未知性,某条多线程是否执行了,某条线程执行了多久?某条线程执行的时候,我们期望得到的数据是否已经复职完毕无法得知,我们只能够等待这条多线程 任务执行完毕而已。而 colable 加 future future task 却可以方便的获取多现场运行的结果,可以在等待时间太长而没有获取到需要的情况下取消现场的任务。

各位好友王爷,欢迎收看本期更新,在音频领域啊,除了卡通接口,大三星接口或者是外形科技三点五毫米的耳机接口之外,还有很多很多看似陌生实际却非常 重要的接口。今天呢,本期视频呢,我就为大家来梳理处理啊,这些看似陌生的接口究竟是干什么用的?首先呢,我把这些接口啊分为了安卓老模拟类的音频接口,以及低着头数字类的音频接口, 两种类型的接口呢,都有他们的优势和不足的地方。我们先来讲一下模拟音频接口,模拟音频接口呢,是我们最常见而且最方便的啊,但是他可能会受到线台的质量、接口老化、传输距离等众多因素的影响,导致音频信号可能会受到损耗。 第一个模拟音频接口呢,就是 xlr 卡龙接口啊,这是最常见的,现在大家用到的话筒声卡话放上面啊,都有卡。 卡农接口呢,主要用于传说啊,三星的平衡音频信号,因为卡农接口呢,通过公头母头的这个方式啊,他限定了设备的输入和输出信号的流向,还有就是卡农接口的卡扣设计啊,他不易让这个接头啊拉脱, 所以说呢,它属于一种比较受大家欢迎的一种啊,靠谱的模拟音频接口。还有一种呢就是迷你 xlr, 也就是迷你卡通的接口啊,这不太常见,但是像佳能的 ct 零摄像机, bmd 的录机啊,他都有优点呢,就是占用设备的体积更小啊,用途和全尺寸的卡通接口是一模一样的, 所以说两者呢,都是可以通过转接头啊,去相互转换的。第二个六点三五毫米的 t r s 和 t s 接口,也叫大三星和大二星这两种接口啊,所用到的接头呢,很多朋友会错误的去混用啊,其实区别两者非常容易。大三星的接头呢,他接头部分 有两个黑色线圈,而大二型呢,只有一个黑色线圈。大三型接头呢,通常用于连接声卡,进行音箱画放啊等音频设备,用来传输平衡的音频信号, 平衡信号更有利于长距离传输,抗干扰能力呢也更强。而 ts 大二些的接头呢,通常用来连接电吉他、模拟合成器及的效果器及的音箱等等。传输的信号呢,是非平衡的信号。 非平衡信号受到线材的影响是非常大的啊,抗干扰能力呢,也比较弱,不适合长距离的去传输,如果需要长距离传输的话,就需要在中间接一个 d i 盒。如果平衡信号通过非平衡的大型线材进行传输的话,那么信号强度吧,通常会直接小六 db。 第三个 db 二五啊,我们会经常在跳线盘多通道的大声卡多通道的田台上见到。 db 二十五呢,也分为公头和母头啊,公头呢有二十五针, 常用于信号传输线的两端,母头呢有二十五个洞,通常呢会焊连在音频设备上使用。 db 二十五接口呢,一共可以传输八路啊,这个平衡信号通过八通道的线来用来连接两个接头啊,便于成组的去传输模拟音频信号,让整个录音棚的线路系统呢,会看上去非常的规整。 第四个 tt 接口啊,常用于跳线盘上,便于 tt 接头的跳线啊,用来改变设备与设备之间的模拟信号的路由。 他们的直径尺寸呢,位于大三星接口啊,和这个三点五毫米耳机接口之间。相对比三点五毫米耳机接口来说呢, tt 口呢,连接更为稳定,而且便于插拔,还大大的缩减了接口。这张 t 接 模拟音频接口呢,主要就是上面这四种啊。接下来呢,我再来普及一下数字音频接口。数字音频接口呢,大多数应用于啊规模稍微大一些的 专业录音棚,婚姻是五代市现场扩声啊等等领域。数字接口所传输的是数字信号,通常不会有信号损耗,功能和用途呢也更为广泛, 路线呢更为灵活,但是必须要求 ab 端的两台设备啊,都必须支持同样的一个数字协议才可以使用。第一个最常见的是乙态网接口啊,也就是网线啊,进行连接并传输信号。 底台网接口呢,它的用途非常非常广泛,支持的协议呢也是五花八门,最常见的几种呢,就是单体 avb, 还有真力的 sam 等等。单体技术呢,通常应用于啊复杂的舞台扩升领域, 可以通过一条网线同时发送和接收许多音频通道。所以说这部件是非常简单和容易的啊,而且延迟极低,信号不易损耗。如果把所有支持单体技术的调音台,音箱甚至 imac 等设备啊,通过网线 连接到单体的矩阵处理服务器之后,还可以任意编组和路由不同设备的这个信号流程,并且可以实时监控每一支音箱的电瓶信息,每一台设备运行状态是否好和坏哈,可以满足最苛刻的音响系统的要求, 使用起来呢也更为科学和便利,并且可以通过升级直接过渡到 avb 协议,也就是音视频桥联的这个协议啊,像是码头很多声卡和设备都支持 avb 的协议,可以取代传统的 usb 数据线 和电脑去连接进行数据交换。而 sam 呢,则是真力推出的一种网络协议,通过网线呢将所有的监听音箱以及 grm 控制器啊连接在一起。 grm 控制器呢,在通过数据线啊连接到电脑,这样就可以通过电脑上的 gm 软件控制和较对所有的音箱状态。第二个 optical 光纤接口啊,我们经常在声卡上 线的光纤接口呢,可以用来传输啊 adat 协议的数字音频信号,每个光纤线呢,可以传输八路数字信号给到另一台具备光纤接口而且支持 adat 协议的设备。 比如说啊,这八路数字信号给到的另一台八通道的 da 数模转换器则可以同步啊扩展八路模拟通道出来。 很多刚刚接触到音频设备的朋友可能会疑惑啊,为什么我买的声卡他写的是二十四进二十四出的,但是我只看到了八路模拟的 io 接口呢?其实啊,这二十四进二十四出呢,是把八路模拟接口和十六路数字接口叠加起来去说的。 第三个 a s, e b u 接口啊,长得他和叉 l r 卡中接口是一模一样的,但是用途和连接的线材是完全不同的。 a s 连接的线材呢,是一百一十欧的数字线,而我们刚刚说的卡农模拟接口 用的是七十五欧的线材,每根连接了卡龙头的 asebo 的线材呢,都可以传输一组立体声的数字信号, 像是声卡与数字混响器之间的连接呢,或者是声卡与数字监听音箱的连接,通常都可以采用 aes 进行信号传输。第四个 d 的另个接口,这个接口呢,比较罕见啊,是 iv 的推出的,用于连接 hdx 预算卡和音频接口进行信号传输用的。 最坑的就是 iv 的 h d s, 想要连接其他品牌,支持 dj 链,可音频接口的话,还需要交两千多块钱的保护费来买它,这个接口授权你才可以正常使用。 第五个就是 bnc 接口啊,他的这个应用领域就太广了,视频领域呢,可以稳定的传输 sdi 的视频信号啊。而音频领域呢,常用于同步不同音频设备之间时钟的作用,关于时钟怎么去同步,还有一些连接方式啊,可以参考我们之前的视频进行学习。 另外呢,很多设备同步时间码的接口也都采用了 bnc 或者是迷你 bnc 接口啊,目的是同步所有设备之间的时间码信息,便于多个录制设备之间同步对轨来使用。 好了,以上就是本期视频的全部阵容了,稍微有点干啊,希望能对你搭建自己的音频系统啊,搭建自己的工作室有所帮助,希望大家多多三连转发,这对我们的帮助非常非常大,我们下期再见!

这条视频会带你从零开始认识主板,告诉你主板上密密麻麻的接线和针脚都是干什么用的。视频很长,耐心看完。 主板正面。这一块是主板的 cpu 供电部分,供电的规格决定了 cpu 能否超平,跑满、瑞平等等。中高规格的主板会在供电模组上配备散热马甲来帮助散热。这一块是 cpu 供电接口,根据规格不同, 通常情况下会有四片、六片、八片、八加四、八加八片。这一块是 cpu 散热风扇接口,英文标识一般为 cpu fan, 而水冷的水泵接口也通常在这个附近。根据不同主板的不同叫法,一般标识为 cpu opt 或者 aio pump, 这里就是系统。风扇接口一般分布在主板的上方和下方, 标识为 s y s fan。 这一块是 argb 借口,这是一组五伏三针的接口,很多主板会在上方、右侧以及下方分布两 到三组,通常是接一些同步灯光的设备,譬如机箱风扇的灯控线。这一块是真错灯,又叫 debug 灯,依次分别为 boot、 vga、 drum。 cpu 开机, boot 常亮表示没有引导系统,一般是没装系统或者硬盘问题所致。 vga 常亮,表示显卡没有过自己。 dram 常亮,表示内存问题、超频失败、内存出错、不兼容等等都会卡在这个阶段无法开机。 cpu 常亮,表示 cpu 部分有问题。 灯常亮,你就该考虑换 cpu 了,至少你的 u 并不健康。除了 boot 等常亮之外,其他三个灯任何一个常亮都表示没有过自检,你是进不了系统的。 最后要说明一下,第八个灯并非所有的主板都有,通常我们所说的盖板都是没有的,所以这个灯在某种意义上讲是衡量你主板盖不盖的一个因素。这个部分是主板的供电接口,这个没什么说的,不插不亮机。这个部分是机 箱的前置 typec 接口,前置 typec 没用的朋友看看主板的这个接口有没有接。这个部分是撒塔接口,机械硬盘和大部分撒塔设备都需要从这个接口走。这个部分就是 cpu 的接口了,这是电脑最关键的部分。 这一块是主板的内存插槽,根据主板的规格不同,会有二到四根插槽,内存双通道,一般的接法就是优先接第二和第四根,也可以接第一和第三根。现在大家看到的是主板的 m 二协议 ssd 固态硬盘接口,高规格的主板通常会提供两到四条 m 二接口。 pcre 四点零以上的 ssd 建议优先接第一个盘位,也就是最靠近 cpu 的盘位。这一部分就是主板的 pcre 接口了,此接口根据规格不同分为 pcre, 一速、四速、八速、十二速、十六速,主要是用来接拨显卡、声卡以及其他扩展卡的显卡优先考虑十六速的。这个通常 是最靠近 cpu 这一侧的这根。这一块是主板的音频部分,接口通常在最靠近他的地方。最下面的这一列接口是主板的各种接线区域,包括主板的跳线、 usb、 二点零、 airgb 等等。主板的跳线接法如下,根据字母提示接就没错,机箱上的跳线接头标识的字母跟主板上一一对应就行。 而这个部分是主板的芯片组部分,这个部分是用来控制除了 cpu 直连之外的其他设备的。哎呦 面板。首先这个 flesh bells 按钮是用来更新 bells 的,在它边上的这个可乐 bells 是清除按钮,在超频失败进不了系统时,我们不用再去拔电池清除 bells 了。 按钮是超平爱好者的救星。不过上述这两个按钮并不是什么主板都有的,大多数出现在规格比较高的主板上。下面黑色的是 usb 二点零接口,现在你看到的是 ps 二接口, 用来接拨键盘、鼠标等周边。这一块接口是高速 usb 接口。之前蓝色的 usb 叫做三点零接口,红 红色的叫做三点一接口,如今统一叫做三点二接口,蓝色的叫做三点二进一,红色的叫做三点二进二,区别为红色的支持实际的传出速度。 不过可悲的是,我们大部分人的移动设备是跑不出这个速度的,这个是网卡借口,根据主板的规格不同,会有一 g 二点五 g 实际机动速率区别吗?显而易见就是速度快慢。接下来是主板的 wifi 借口,最 背后这部分是主板的音频接口,其中这是光纤接口,可以提供未经处理的数字信号,通过光纤线输出给数字功放处理。这么长的视频,感谢看完,现在你对主板的了解是不是更全面了?

如果你想执行定时或延迟的任务,那么你需要用到该就的 excutt soris 接口中的方法。在了解这些方法之前,我得先介绍该借口的时间内,也就是具备执行定时或延迟任务的线程值。 我们之前创立了健身池都没实现过该接口,所以他们不具备执行定时或延时任务的功能。这个类的名字有点长,叫 sk a 九的所谓的 polo, 一个 stole, 中文翻译过来就是叫 度献真词。什么意思呢?就是具备执行定时或延时任务的献真词,他还可以执行周期性任务。这个下一期再讲他继承字所谓的 polo excut 类,说明他也能干普通献真词干的事。那如何创建他? 我们可以通过他自身的各个方法来创建他,也可以通过攻击类一个 qq 的词来创建他。一共有四个方法,他们的作用我列举出来了,如图所示, 具体内容就不一一念了。现在来依次介绍我们开团的两个方法。首先是延时执行一次 lower 任务的词叠就有方法。注意他不是重复执行的,时间到了以后他只执行一次。他有三个三处,第一个三处是任务只能 轮船,忘了过任务。第二个参数是指定延迟的时间,这个参数要和第三个参数一起看。第三个参数是指定时间,单位可以是年月日,也可以是十分秒。方法,返回一个四个 a 九的浮游艇对象和浮游艇一样,用来接收任务执行结, 由于 lond 过任务,没有执行结果,所以他就只是起到一个取消任务和查看任务进度的作用。下面动画演示四该九方法的执行过程。 这是一个正在运行的限制迟,这是我们要延时执行的任务,就用 ska, 就有方法提交给现车。迟限制迟开始处理任务,因为是延迟任务,所以 要等到时间到了以后任务才开始执行。任务执行完成以后将结果返回给调研者,调研者拉到结果以后可自行处理。下面编写视力代码,首先定 一个任务 past 实现,忘了管接口,任务内容是输出当前时间,待会看看任务前后的时间间隔等不等于延时时间。接下来我们来执行该任务,首先将任务 创建出来,然后创建一个核心县城数为五的调度县城池,接着在提交任务之前输出一次当前时间,在 接着调用是该组方法,并将任务传递给他,延时时间指定为三秒钟,最后调用下档方法关闭显示池。至此 问方法编写完成,整个例子也编写完成。执行程序观察执行结果。从执行结果来看,程序输出一点九分三十秒和 一点九分三十三秒,他们之间相差正好是三秒钟,说明任务的确是延迟三秒后执行的。接下来来看看延迟执行一次科尔伯任务的该救方法和前面的方法除了提交的任务不同以外,其余的都相同。下面我们就不再重复延迟 执行动画了,直接编写视力代码,重新编写一个有返回值的任务为 wtast, 实现科二播结构。任务内容是以字符串形式返回当前时间,所以科二播的范显示词句重写课方法要用 洛克泰姆的老方法,以自服串的形式返回当前时间。至此,任务部分编写完成执行任务的代码还是应用之前的,只不过需要将他四个任务改为违章的他四个任务。接下来接收该九方法范围之日拿到 到返为止。以后要用 fuqi 等给的方法输出结果这个方法有异常,抛出使用揣盖将其捕获。另外,我们将关闭健身池的操作移到 fant 里代码块中。至此,执行任务的代码改写完成再来执行。陈 去看看。从执行结果来看,程序输出十点零二分三十八秒和十点零二分四十一秒,他们之间相差正好是三秒钟,说明任务的确是延迟三秒后执行的。最后总结一下本节内容,本节介绍了执行定时延迟任务的方法给 他的作用及用法。这里就不太坠数了,在实际开发中,我一般用他们来执行需要延时且只执行一次的任务。这个结的代码我放在了给他号码上,大家如果有需要的话可以前去查看。

呃,大家好,我是三七,今天跟大家分享一下多县城相关的知识,其中包括 renable, collable, future 以及 future task。 话不多说,点个关注,把头埋底,我们开始上课 啊,很多小伙伴认为这个软 naple 啊,其实是一个县城,其实它并不是啊,它只是一个接口,而且是一个非常简短的一个接口,我们看一下它的代码, 它的代码呢?只有这么简短的一个三行代码继承它 runnable 接口呢,需要实现它的一个软方法 哦,我们为什么要实现这个 run 方法呢?比如说我们想一下我们创建这个县城的目的是什么?就是为了实现通过一个新的县城实现一个业务逻辑, 这个软方法中包括的就是一个业务逻辑的一个实现,这是我写的一个简短的一个代码,很简单啊,因为这个妞色的, 嗯,是这个 new 色的是,嗯,构造方法呢,就是可以传入一个 runnable 接口。呃,因为 a renable 接口只需要实现它的一个。呃, run 方法,他只有一个方法,所以我们可以采用这个栏目的表达式进行书写,然后其实他就是建立了一个实力,然后打括号的内容呢,就是 real 方法的一个实现。 嗯啊,创建一个新的县城呢,我们需要调用它 star 的方法,然后 star 的方法呢?这里呢?呃,其中调用它的 star 的零方法,然 然后再来到他的四二零方法呢,我们看到他有一个呃, native 休息, native 休息,其实就是他是用 c 语言写的,其实我们不用太在意,他只是让这个四二零方法呢,就是让一个县城啊去开启当做就绪状态,然后 到 cpu 轮到这个时候的话,他就会自动实现他的一个乱方法,然后这时候我们就可以调由我们这个 readable 方法里的乱方法就可以实现业务逻辑了。 呃, colo 报接口呢?它是一点五版本实现的,一百五五版本后出的,我们看一下它这个注视啊。嗯,我们呃要学习一个新东西呢,一定要看它的注视。这个写的是 col 考 a 报方法呢,类似于 这个 rendable 方法,他们都是被设计的用来去。呃是呃是另一个县城的去执行的,我们有了这个 read rendable 这个接口,为什么还要这个用这个 connable 呢? 我们看一下这个啊, condobo 接口实现的靠方法呢?他其实是有返回值的,然后 renobo 实现的这个方法呢,就是没有返回值,这就是他俩的方法,这下会了吧?啊?如果我们那个 这下有人问你 runnable 接口和 comfort 接口都会了吧?啊?那么我们自己可不可以创建一个接口,比如说创建一个三七三七呢?不 啊,这个是当然不行的啊,因为命名规范,不许允许用这个数字开头进行创建的。

说完考一个接口,我们说一下 future 啊,其实 future 它也是一个接口,需要实现 future 接口的话,我们需要去重写这五个方法,最主要的还是这个 get 方法,呃,它我们会看到 get 方法前面有会有一个返回值, 通过调用 get 方法,我们可以返回考内报接口,靠方法中的返回值,所以这个 get 方法的返回值和考 abo 方法的返回值的数据类型应该是同一个数据类型,所以我们通常说 feels 存储的是现成的返回值。 这是我呃写的一个简单的小例子,我们定义了一个创建了一个 future task 类,然后将这个任务,然后 然后抛给了一个新的县城,让他去执行,然后得到他的一个返回值啊。有小伙伴们会有疑问,为什么 future task 可以 呃传入这个建立一个新县城?当建立县城的时候,他的构造器应该是传入 randable, 而不是这个 future task, 我们可以看一下他的这个原码。其实 future task 呢,他也是继承了 a randable 和 future, 呃,所以呢, future task 呢,既要重写它的一个 run 方法,呃,也要重写它的一个 get 方法。 future task 呢,构造器呢,是传入一个 call nebulf 啊的一个接口,然后 去建立创建他的实力,并重写他的一个靠方法。这个大括号里的就是重写他的靠方法。我们将这个菲斯塔斯的这个任务传入交给一个县城,然后让他开启一个县新县城,并且设置他县城状态为 呃就绪状态,然后呃,当我们 cpu 运行到这个线程的时候,我们就可以调用它的 task 中的一个 run 方法。我们先看一下这个 run 方法, alright 方法呢?它我们简单的看一下,然后看一下它的重要的几个步骤吧,然后你看一下它这个先调用先呃创建了一个 a rest rest 的一个结果的一个值,然后它通过调用 c 点靠, 其实这个 c 点靠呢,就是这块这个我们用 这个 c 呢,就是我们用这个拉姆达表达式创建的一个呃 colonbo 接口哈 a 宝接口的一个实力。然后 c 点靠呢,就是调用它的靠方法。靠的方法呢?其实就是它的这个实现逻辑 调用靠方法后呢,得到了这个返回值,然后我们设置一下呃这个返回值, set result, 在这儿将这个结果复制给这个 outcome。 呃,当这个新县城执行 run 完毕后,我们调用 task 点 get, 要取出它的一个结果。 get 方法呢? 啊,只有这么几行,我们首先要看看一下这个 future task 它的几种状态,第一种状态呢是零状态,它是一个 呃任务创建当中,第二种状态呢是一个呃 com 呃一状态,一状态呢是这个任务正在执行,然后这个二状态呢?呃,就是 他这个任务已经执行完毕了,我们看这个三个状态就行了,就能了解这个 get 方法啊,当这个任务正在执行或者正在创业中呢,我们要呃我为特,我们要执行这个为特蛋方法,这个呢,我们看一下这是一个死循环,所以呢,我们就是他在执行任务执行, 呃任务执行中,或者是在任务创建的时候,他会呃堵塞,就是 get 为什么会堵塞?因为他是一个死循环, 当这个呃任务呃创建完毕的时候,他就会大于这个值,然后他就会返回这个状态。 当 get 返回这个状态后呢,我们调用这个 report 方法。呃, report 方法呢?就是将这个值返回。呃,之前我们用软方法呢,将这个值付给了 outcome, 然后将这个 outcome 给返回就可以了。 我们运行一下这段代码。 哦,我们可以很很很很容易看到啊,这一段这个主线程执行后,他会停断停顿一段时间,就是因为他创建新线线程后,主线程会继续往下执行,但是这个 taste 点 get 它是堵塞的, 所以呢?他会,所以他不会执行主线称不会执行。呃,执行这段操作只会在这里堵塞,直到他侧点 get 得到返回值之后,他才能记主线层才能继续往下执行 啊。这里我设置是三秒钟的一个睡眠时间,所以呢,他这个,呃经过睡眠时间三分钟,然后取得这个哈罗窝的这个结果后,这个主线程才能执行完毕。好,我们今天 今天的课程就讲完了,我准备收拾书包,再想一想我们今天讲了什么。 runable, 嗯, callable, future future task, 嗯,和关注好,下课。