Python

线程、进程和协程

2020-05-22  本文已影响0人  宇宙之一粟

线程、进程和协程

为什么要学习多线程

生活中的例子:听音乐、看风景、骑车
播放音乐、下载、写代码

使用场景

  1. 快速高效的爬虫程序

解析链接
爬取文字
爬取图片
代理IP验证码

  1. 多用户同时访问的Web服务
  2. 电商秒杀、抢购活动
  3. 物联网传感器监控服务器
    烟感器、温度传感器、湿度传感器

线程vs进程vs协程

操作系统 进程 线程 协程

重要性

进程

  1. 是一个执行中的程序
  2. 每个进程都拥有自己的地址空间、内存、数据栈以及其他用于跟踪执行的辅助数据
  3. 操作系统管理其上所有进程的执行,并为这些进程合理地分配时间
  4. 进程也可以通过派生(fork或spawn)新的进程来执行其他任务

线程

  1. 在同一个进程下执行,并共享相同的上下文
  2. 一个进程中的各个线程与主线程共享同一片数据空间
  3. 线程包括开始、执行顺序和结束三部分
  4. 它可以被抢占(中断)和临时挂起(也称为睡眠)-- 让步
  5. 一般是以并发方式执行

并发

上一篇下一篇

猜你喜欢

热点阅读