【Java多线程系列】基本原理(1)串行、并行、并发

本篇属于【Java多线程系列】文章第一章【基本概念与底层原理】的第一小节内容,我们会对串行、并行以及并发这几个基本概念进行介绍。

我们将以装修房子为例,需要完成三件任务,每件任务的完成花费一定的时间:

(1)墙体拆迁 -> 2天

(2)安装水电线 -> 1天

(3)粉刷、铺地板 -> 3天

串行

【定义】一次只能做一件事情,按照顺序依次执行,后面的代码段必须等到前面代码段的任务执行完毕后才能执行。

假设我们目前经费有限,只有一名工人,工人没有三头六臂,因此他需要一件接着一件来完成任务,只有完成一件任务后才能去完成下一件任务。

此时完成总体装修工程,一共需要花费2+1+3=6天的时间

并行

【定义】在同一时刻,多个任务可以同时开始进行,且彼此之间没有依赖关系

假设我们目前经费比较充足,雇佣了三名工人。装修工程的子任务之间没有依赖关系,因此工人们可以对墙体拆迁、安装水电线、粉刷铺地板这三件事情同时开工,每一名工人负责一件任务。

此时完成总体装修工程,总耗时取决于耗时最长的那件事情(在这里就是粉刷、铺地板)所需的时间,因此一共需要花费3天的时间

并发

【定义】以交替的方式利用等待某件事情完成的时间来做其他事情

假设我们目前经费不充足,只能雇佣了一名工人。仔细对粉刷、铺地板这件任务进行分析,发现它其实包含两部分,第一部分是进行粉刷墙壁、铺地板,第二部分是进行风干,分别花费2天和1天的时间。

粉刷、铺地板=粉刷墙壁、铺地板(2天)+ 风干(1天)

在等待房屋风干的时候,工人此时可以去完成其他的任务以节省时间

在第三天的时候,从宏观角度来看,工人同时做了两件事情,但是微观的角度来看,工人没有三头六臂,其实他只在进行安装水电线的工作。

此时完成总体装修工程,一共需要花费5天的时间

并发 vs 并行

根据CPU多路复用的原则,会将CPU的执行时间切分成很多细微的CPU时间片,一个CPU在同一时间只能完成一件任务。

对于单核CPU,当面对多个任务的时候,每个小时间片会执行一个操作,多个操作之间快速切换执行,造成了同时运行的假象。其实CPU在一个时间片内运行某一个线程时,其它线程处于挂起状态,这种方式我们称之为并发。

当系统有一个以上 CPU 时,则线程的操作可以并行开始。当一个 CPU 执行一个线程时,另一个 CPU 可以执行另一个线程,两个线程互不抢占 CPU 资源,他们同时进行,这种方式我们称之为并行。

文末福利

最近各大互联网公司的秋招都陆陆续续开始了,还在找工作的小伙伴可以后台**回复关键字进入对应的秋招/内推/面试群,我给大家整理了各大公司的内推通道、简历模板还有历年的笔试题**,大家要好好准备哦。还可以帮助大家**免费修改简历、模拟面试哦~**

![在这里插入图片描述](https://upload-images.jianshu.io/upload_images/21321751-89fbbf8c7c4f9e63?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

![在这里插入图片描述](https://upload-images.jianshu.io/upload_images/21321751-9e82ede818544bd3?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

**关注公众号「程序员大帝」,《Offer收割机》系列持续更新~**

![在这里插入图片描述](https://upload-images.jianshu.io/upload_images/21321751-2559bb455a50a0db?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

创作不易,各位的支持和认可,就是我创作的最大动力,我们下篇文章见!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
禁止转载,如需转载请通过简信或评论联系作者。
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,874评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,102评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,676评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,911评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,937评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,935评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,860评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,660评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,113评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,363评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,506评论 1 346
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,238评论 5 341
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,861评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,486评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,674评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,513评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,426评论 2 352