龙空技术网

Python中进程和线程详解

好程序员 87

前言:

此时咱们对“python线程与进程”可能比较着重,你们都想要剖析一些“python线程与进程”的相关文章。那么小编同时在网摘上搜集了一些对于“python线程与进程””的相关知识,希望看官们能喜欢,大家快快来学习一下吧!

  好程序员Python培训分享Python中进程和线程详解:Num01–>线程

  线程是操作系统中能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。

  一个线程指的是进程中一个单一顺序的控制流。

  一个进程中可以并发多条线程,每条线程并行执行不同的任务。

  Num02–>进程

  进程就是一个程序在一个数据集上的一次动态执行过程。

  进程有以下三部分组成:

  1,程序:我们编写的程序用来描述进程要完成哪些功能以及如何完成。

  2,数据集:数据集则是程序在执行过程中需要的资源,比如图片、音视频、文件等。

  3,进程控制块:进程控制块是用来记录进程的外部特征,描述进程的执行变化过程,系统可以用它来控制和管理进程,它是系统感知进程存在的唯一标记。

  Num03–>进程和线程的区别:

  1、运行方式不同

  进程不能单独执行,它只是资源的集合。

  进程要操作CPU,必须要先创建一个线程。

  所有在同一个进程里的线程,是同享同一块进程所占的内存空间。

  2、关系

  进程中第一个线程是主线程,主线程可以创建其他线程;其他线程也可以创建线程;线程之间是平等的。

  进程有父进程和子进程,独立的内存空间,唯一的标识符:pid。

  3、速度

  启动线程比启动进程快。

  运行线程和运行进程速度上是一样的,没有可比性。

  线程共享内存空间,进程的内存是独立的。

  4、创建

  父进程生成子进程,相当于复制一份内存空间,进程之间不能直接访问

  创建新线程很简单,创建新进程需要对父进程进行一次复制。

  一个线程可以控制和操作同级线程里的其他线程,但是进程只能操作子进程。

  5、交互

  同一个进程里的线程之间可以直接访问。两个进程想通信必须通过一个中间代理来实现。

标签: #python线程与进程