Python的多任务 01

易小灯塔
2017-08-07 / 0 评论 / 2,056 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2022年06月22日,已超过888天没有更新,若内容或图片失效,请留言反馈。

多任务

多任务就是操作系统可以同时运行多个任务

并行

指的是任务数小于等于cpu核数,即任务真的是一起执行的

并发

指的是任务数多余cpu核数,通过操作系统的各种任务调度算法,实现用多个任务“一起”执行(实际上总有一些任务不在执行,因为切换任务的速度相当快,看上去一起执行而已)

线程和进程

进程:是执行中一段程序,即一旦程序被载入到内存中并准备执行,它就是一个进程。进程是表示资源分配的的基本概念,又是调度运行的基本单位,是系统中的并发执行的单位。

线程:单个进程中执行中每个任务就是一个线程。线程是进程中执行运算的最小单位。

进程和线程的区别

  1. 进程通俗理解就是一个运行起来的程序或者软件就是一个进程,每次启动进程都会向操作系统索要运行资源,进程是操作系统资源分配的基本单位。
  2. 线程就是程序中执行的一个分支(实例), 每个分支可以执行不同的任务,可以完成多任务操作。 线程是cpu调度的基本单位。 线程是依附在进程里面的,没有进程就没有线程。
  3. 进程之间不共享全局变量,线程之间共享全局变量
  4. 每次启动进程都会向操作系统索要资源,线程之间共享进程的运行资源
  5. 多进程开发模式比多线程开发模式健壮性要强,因为多进程开发某个进程挂掉不会影响其它进程的运行,但是多线程开发,如果进程挂了,那么进程里面所有的线程都会销毁。
0

评论 (0)

取消