进程、线程、协程的区别

  • 进程是资源分配的单位,真正执行代码的是线程,操作系统真正调度的是线程。
  • 进程没有线程效率高,进程占用资源多,线程占用资源少,比线程更少的是协程。
  • 协程依赖于线程、线程依赖于进程,进程一死线程必挂,线程一挂协程必死
  • 一般不用多进程,可以考虑使用多线程,如果多线程里面有很多网络请求网络可能会有堵塞,此时用协程比较合适。

简单总结

进程是系统资源分配的单位
线程是操作系统调度的最小单位
进程切换需要的资源很最大,效率很低
线程切换需要的资源一般,效率一般(当然了在不考虑GIL的情况下)
协程切换任务资源很小,效率高
多进程、多线程根据cpu核数不一样可能是并行的,但是协程是在一个线程中 所以一定是并发

协程与线程, 进程的区别相关推荐

  1. 抽丝剥茧聊Kotlin协程之协程与线程之间的区别

    1. 前言 关于协程,可能大家最经常听到的一句话就是"协程是轻量级的线程".一脸懵逼,有没有?这可是官方的slogan,严格意义上讲,一方面官方是想让大家把协程和线程产生一个直观关 ...

  2. unity协程和线程

    谈谈线程和协程的区别.一般应用一个应用程序只使用线程这一"资源". 需要明确,Unity只使用了一个线程,但是,我们需要"同时做很多事",那Unity作为单线程 ...

  3. 协程和线程的区别、协程原理与优缺点分析、在Java中使用协程

    文章目录 什么是协程 协程的优点与缺点 协程实现原理. 协程与线程在不同编程语言的实现 在Java中使用协程 Kilim介绍 Kilim整合Java,使用举例 小总结 什么是协程 相对于协程,你可能对 ...

  4. Go 面试官:什么是协程,协程和线程的区别和联系?

    大家好,我是煎鱼. 最近金三银四,是面试的季节.在我的 Go 读者交流群里出现了许多小伙伴在讨论自己面试过程中所遇到的一些 Go 面试题. 今天的男主角,是工程师的必修技能,那就是 "什么是 ...

  5. 什么是协程,协程和线程的区别和联系?

    1 进程 进程是什么 进程是操作系统对一个正在运行的程序的一种抽象,进程是资源分配的最小单位. 进程在操作系统中的抽象表现 为什么有进程 为什么会有 "进程" 呢?说白了还是为了合 ...

  6. go语言协程和线程区别

    go语言协程和线程区别 一.线程和协程区别 主线程是一个物理线程,直接作用在 cpu 上的.是重量级的,非常耗费 cpu 资源. Go 主线程(/也可以理解成进程)一个 Go 线程上,可以起多个协程. ...

  7. 以爬虫为例,单线程,协程,线程,进程之间性能的比较,原来协程可以这么快?

    前言 因为刚刚学习到了协程,然后之前也对爬虫有一定的了解,所以打算结合之前学的线程和进程,和协程进行对比,看看它的性能到底有多高,在测试完成后,结果还是不错的!下面就直接上代码了,因为代码逻辑都比较简 ...

  8. python协程和线程区别_python 协程 及其与python多线程的区别和联系

    协程(coroutine)又称微线程,纤程,是种用户级别的轻量级线程. 协程拥有自己的寄存器上下文和栈.协程调度切换时候,将寄存器上下文和栈保存到其他地方,等待切换回来的时候恢复,并从之前保存的寄存器 ...

  9. 【golang】协程和线程的区别

    线程是系统调度的基本单位.go协程由go语言运行时的调度器进行调度,操作系统内核感知不到协程的存在. 在多核处理场景中,线程是并发与并行同时存在的,而go协程依托于线程,因此多核处理场景下,go协程也 ...

最新文章

  1. stm32双向可控硅调压程序_单向可控硅和双向可控硅的测量与模块测试
  2. 练习二十一:关于猴子吃桃的问题
  3. oracle usenl,深入理解Oracle表(1):ORDERED和USE_NL | 学步园
  4. 匹配正则_Day233:正则表达式匹配方法 match()
  5. 输入序列不连续的序列检测
  6. LeetCode 421. 数组中两个数的最大异或值(Trie树)
  7. MySQL数据库搜题_智慧树知到_MySQL数据库设计与应用_搜题公众号
  8. 机器视觉:基于压缩方式的视频采集卡的两大类别
  9. ++递归 字符串全排列_一文看懂全排列算法
  10. linux中cron表达式指南
  11. GPS接收天线 GPS天线原理(有源天线供电通常由接收机前端通过RF同轴电缆供电。)实际测试GPS接收芯片的SMA天线底座中心孔和底座之间电压3.3V,可以通过SMA接口对天线供电2022.3.30
  12. RS485接口保护电路
  13. 架构-大数据架构-阿里
  14. 基于微信小程序的在线考试系统【毕业设计源码】
  15. qt c语言混合编程 pdf,QT中的C++技术 pdf
  16. 让人喷血的92条个性签名!!!
  17. worldpress 的 GPG 加密插件
  18. 奔梦向前-代码实现表白男生女生-2020-06-15
  19. MySQL:数据完整性
  20. linux磁盘阵列教程,RAID 磁盘阵列简述

热门文章

  1. Jenkins报错Error fetching remote repo 'origin'真正解决办法
  2. IP和网段及子网掩码基础知识
  3. PHP依赖注入(DI)和控制反转(IoC)详解
  4. Android批量图片载入经典系列——使用LruCache、AsyncTask缓存并异步载入图片
  5. sqlserver 遇到以零作除数错误的处理 不报错的解决方法
  6. UITableViewCell自适应高度
  7. php 包 排行,PHP 的 Phar 包原来性能这么强!
  8. 02326 操作系统 简答题 超简短归纳
  9. #苹果maccmsv10# redis memcached 缓存的若干问题解决
  10. JavaScript性能优化【下】--性能优化的具体方式