美文网首页
java并发与多线程(一):并发与并行

java并发与多线程(一):并发与并行

作者: 姜小姜小 | 来源:发表于2019-07-15 22:31 被阅读0次

之前写java锁的时候有说等我看完了阿里的《码出高效》-并发与多线程就来更新,最近忙的没顾上的我大半夜来更新啦(纯记录,内容全部来阿里《码出高效》,不用于盈利,侵删)。

并发与并行

并发是指在某个时间段内,多任务交替处理的能力。所谓不患寡而患不均,每个CPU不可能只顾着执行某个进程,让其他线程一直处于等待状态。所以,CPU把可执行的时间均匀地分成若干份,每个进程执行一段时间后,记录当前的工作状态,释放相关的执行资源并进入等待状态,让其他进程抢占CPU资源。并行是指同时处理多任务的能力,目前,CPU已经发展为多核,可以同时执行多个互不依赖的指令及执行块。并发与并行两个概念非常容易混淆,他们的核心区别在于进程是否同时执行。以KTV唱歌为例,并行指的是有多少人可以使用话筒同时唱歌,并发指的是同一个话筒被多个人轮流使用。
并发与并行的目标都是尽可能地执行完所有任务。以一声坐诊为例,某个科室有两个专家同时出诊,这就是两个并行任务;其中一个医生,时而问诊,时而查看化验单,然后继续问诊,突然又中断去处理病人的咨询,这就是并发。在并发环境下,由于程序的封闭性被打破,出现了一下特点:
并发程序之间有相互制约的关系。直接制约提现为一个程序需要另一个程序的计算结果;间接制约体现为多个程序竞争共享资源,如处理器、缓冲区等。
并发程序的执行过程是断断续续的。程序需要记忆现场指令及执行点。
当并发数设置合理并且CPU拥有足够的处理能力时,并发会提高程序的运行效率。

相关文章

  • iOS 多线程技术总结

    概览 进程与线程的概念 多线程的由来 并行与并发 多线程的实现 串行与并行 线程的几种状态 串行队列与并发队列区别...

  • 一. Java并发和多线程简介

    Java并发是一个涉及了java平台上多线程(MultiTheadings)、并发(Concurrency)和并行...

  • Java并发编程整理之并发与并行概念讲解(1)

    Java并发编程整理之并发与并行概念讲解(1) 并发和并行区别 --[百度]:并发(Concurrent)当有多个...

  • go 的并发机制

    并发与并行的概念 ① 多线程程序在单核cpu上运行就是并发;② 多线程程序在多核cpu上运行就是并行; gorou...

  • java并发与多线程(一):并发与并行

    之前写java锁的时候有说等我看完了阿里的《码出高效》-并发与多线程就来更新,最近忙的没顾上的我大半夜来更新啦(纯...

  • Java多线程知识点汇总

    Java 多线程 多线程:指的是这个程序(一个进程)运行时产生了不止一个线程 并行与并发:并行:多个cpu实例或者...

  • Java多线程(一)

    Java多线程(一) 1. 并发与并行 并行:指两个或多个事件在同一时刻发生(同时发生)。 并发:指两个或多个事件...

  • Java多线程入门

    Java多线程入门 1. 并发与并行 并发 : 指两个或者多个事件在同一时间段运行 并行 : 指两个或者多个事件在...

  • Tutorial

    Java Concurrency涵盖了Java平台上的多线程、并发性和并行性。这包括Java并发工具、问题以及解决...

  • 线程

    目录: 线程与进程的关系:什么叫“并发”?什么叫“并行”?多线程的好处:Java 的创建多线程的方法(三种):线程...

网友评论

      本文标题:java并发与多线程(一):并发与并行

      本文链接:https://www.haomeiwen.com/subject/safakctx.html