首页 > 其他分享 >并行和并发

并行和并发

时间:2024-06-15 15:44:19浏览次数:11  
标签:并行 高速公路 并发 并排 执行 CPU

并行
我们举个例子,如果有条高速公路 A 上面并排有 8 条车道,那么最大的并行车辆就是 8 辆,此条高速公路 A 同时并排行走的车辆小于等于 8 辆的时候,车辆就可以并行运行
CPU 也是这个原理,一个 CPU 相当于一个高速公路 A,核心数或者线程数就相当于并排可以通行的车道;而多个 CPU 就相当于并排有多条高速公路,而每个高速公路并排有多个车道。

并发
离开了单位时间讨论并发其实是没有意义的。
俗话说,一心不能二用,这对计算机也一样,原则上一个 CPU 只能分配给一个进程,以便运行这个进程。我们通常使用的计算机中只有一个 CPU,也就是说只有一颗心,要让它一心多用同时运行多个进程,就必须使用并发技术。实现并发技术相当复杂,最容易理解的是“时间片轮转进程调度算法”。
综合来说:
并发:指应用能够交替执行不同的任务,比如单 CPU 核心下执行多线程并非是同时执行多个任务,如果你开两个线程执行,就是在你几乎不可能察觉到的速度不断去切换这两个任务,已达到"同时执行效果",其实并不是的,只是计算机的速度太快,我们无法察觉到而已. 并行:指应用能够同时执行不同的任务,例:吃饭的时候可以边吃饭边打电话, 这两件事情可以同时执行两者区别:一个是交替执行,一个是同时执行.

标签:并行,高速公路,并发,并排,执行,CPU
From: https://www.cnblogs.com/velloLei/p/18249355

相关文章

  • 高并发编程的好处和注意事项
    高并发编程的意义、好处和注意事项由于多核多线程的CPU的诞生,多线程、高并发的编程越来越受重视和关注。多线程可以给程序带来如下好处。(1)充分利用CPU的资源从上面的CPU的介绍,可以看的出来,现在市面上没有CPU的内核不使用多线程并发机制的,特别是服务器还不止一个......
  • 什么是qps,tps,并发量,pv,uv、接口幂等性、悲观锁乐观锁
    它们都是衡量软件好坏的标准11.qps:QueriesPerSecond,每秒查询率,一台服务器每秒能够响应的查询次数,每秒的响应请求数2-如何估算自己项目的QPS?--取决于:并发量和平均响应时间30.1s*10=1s4-并发量:同一时刻,能并发几个,假设并发量是1......
  • CPU、核心,进程、线程,串行、并发、并行之间的关系
    转发:https://blog.csdn.net/menglei16/article/details/1075945741、计算机硬件基本组成一个计算机(冯·诺依曼结构)【主要】硬件组成:主板:是“交通枢纽”,各个部件工作的所在平台,它负责将各个部件紧密连接在一起,各部件通过主板进行数据传输CPU:中央处理器(CentralProcessingUnit......
  • Java并发中线程池的面试题集
    写在开头之前给一个大四正在找工作的学妹发了自己总结的关于Java并发中线程池的面试题集,总共18题,将之取名为《Java并发编程之线程池十八问》,今天聊天时受了学妹的夸赞,心里很开心,毕竟自己整理的东西对别人起到了一点帮助,记录一下!Java并发编程之线程池十八问经过之前的学习,......
  • Go-知识并发控制mutex
    Go-知识并发控制mutex1.介绍2.数据结构2.1Mutex结构体2.2Mutex方法3.加锁解锁过程3.1简单加锁3.2加锁被阻塞3.3简单解锁3.4解锁并唤醒协程4.自旋过程4.1什么是自旋4.2自旋条件4.3自旋的优势4.4自旋的问题5.Mutex模式5.1Normal模式5.2Starving模......
  • 持续总结中!2024年面试必问 20 道并发编程面试题(五)
    上一篇地址:持续总结中!2024年面试必问20道并发编程面试题(四)-CSDN博客九、什么是可重入锁(ReentrantLock)?可重入锁,也称作递归锁或再入锁,是一种同步机制,用于在多线程编程中控制对共享资源的访问。这种锁允许同一个线程多次获取同一个锁,而不会导致死锁。可重入锁通常由编程语言......
  • 持续总结中!2024年面试必问 20 道并发编程面试题(四)
    上一篇地址:持续总结中!2024年面试必问20道并发编程面试题(三)-CSDN博客七、请解释什么是原子操作。原子操作(AtomicOperation)是指在多线程环境中,一个操作或者一系列操作,要么完全执行,要么完全不执行,中间不会有其他线程的干扰。这意味着原子操作在执行过程中不会被其他线程中断,......
  • java多线程学习笔记——“并发提高效率”
    java的内存分配与管理如果要学习多线程,我们必须先对java的内存分配和管理有一定的了解java的分区包括:程序计数器、Java虚拟机栈、本地方法栈、Java堆、方法区、运行时常量池这几个部分。栈区栈区有以下几个特点:1、线程私有,每个线程都会拥有自己的栈2、每个方法在被调用......
  • 探索Spring虚拟线程:高效并发编程的新选择
    目录什么是虚拟线程虚拟线程的优势Java虚拟线程的历史背景在Spring中使用虚拟线程配置Spring支持虚拟线程使用虚拟线程执行任务虚拟线程与传统线程池的对比实战案例:构建高并发Web应用案例描述项目设置代码实现性能测试与结果分析最佳实践与注意事项结论参考资料什么是......
  • [面试题]Java【并发】
    [面试题]Java【基础】[面试题]Java【虚拟机】[面试题]Java【并发】因为Java并发涉及到的内容会非常多,本面试题可能很难覆盖到所有的知识点,所以推荐《Java并发编程的艺术》。Java线程线程通知+等待线程通信简述线程、进程、程序的基本概念?程序程序,是......