千锋教育-做有情怀、有良心、有品质的IT职业教育机构

位置:首页 > 行业动态

Python中进程和线程的区别详解

时间:2017-12-06 09:30:11  |  来源:千锋教育上海校区  |  作者:千锋  

   Num01–>线程

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

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

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

  Num02–>进程

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

  进程有以下三部分组成:

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

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

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

千锋.jpg

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

  1、运行方式不同

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

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

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

  2、关系

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

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

  3、速度

  启动线程比启动进程快。

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

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

  4、创建

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

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

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

  5、交互

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

  Python作为人工智能时代好的代言语言,在其发展中占有重要的地位,千锋python培训课程是真正的Python全栈开发,包含Python项目,爬虫、服务集群、网站后台、微信公众号开发,Python机器学习与数据挖掘,数据分析框架与实战,Python 物联网树莓派的开发等内容。五个月的时间由浅入深,依次掌握十个阶段的专业知识,丰富的项目实战,让学员能力加,自然手到擒来。

上一篇:上海Java培训学校该怎么选择?
下一篇:只学PHP开发基础教程好找工作吗?

课程咨询

  • 北京天丰利校区(总部):北京市海淀区宝盛北里西区28号天丰利商城4层
    北京沙河校区:北京市昌平区沙阳路18号北京科技职业技术广场服务楼2层、南区服务楼2层
    咨询电话:400-654-7778 010-82790226/7-801
    面授课程:Android培训、HTML5培训、UI交互设计培训、PHP培训、JavaEE培训、大数据开发培
                     训、VR/AR混合现实培训、iOS培训、好程序员
  • 深圳西部硅谷校区:深圳市宝安区宝安大道5010号深圳西部硅谷A区B座605-619
    深圳大学城校区:深圳市南山区留仙大道1201号大学城创客小镇16栋2楼、3楼
    咨询电话:0755-33582485-801(硅谷校区)0755-86660670-801(大学城校区)
    面授课程:Android培训、HTML5培训、UI交互设计培训、PHP培训、JavaEE培训、iOS培训
  • 上海地址:上海市宝山区同济支路199号智慧七立方3号楼2-4层
    咨询电话:400-627-7899 021-56166283/56166279
    面授课程:Android课程培训、HTML5课程培训、UI交互设计培训、JavaEE培训、iOS课程培训、好程序员
  • 郑州地址:郑州市金水区纬五路21号河南教育综合楼(经纬中学楼)6/7/8层
    咨询电话:0371-55191750 400-654-7778
    面授课程:Android课程培训、HTML5课程培训、UI交互设计培训、JavaEE培训、iOS课程培训
  • 广州地址:广州市天河区元岗路310号智汇park创意园E座5层
    咨询电话:020-22119207 400-654-7778
    面授课程:Android课程培训、HTML5课程培训、JavaEE培训、iOS课程培训
  • 大连地址:辽宁省大连市甘井子区软件园路2号东软信息B8座2层
    咨询电话:0411-39026086 400-654-7778
    面授课程:Android课程培训、HTML5课程培训、JavaEE培训、iOS课程培训
  • 武汉地址:武汉市江夏区藏龙岛杨桥湖大道15号拓创大厦15楼
    咨询电话:027-81772047
    面授课程:Android课程培训、HTML5课程培训、JavaEE培训、iOS课程培训
  • 成都地址:成都市武侯区科华北路62号力宝大厦N(北楼)18楼
    面授课程:Android课程培训、HTML5课程培训、UI交互设计培训、JavaEE培训、iOS课程培训
  • 校区地址:西安市雁塔区高新六路52号立人科技C座西区4楼
    咨询电话:029-85260160 029-85261030 029-85260960
    面授课程:Java课程培训、Android课程培训、HTML5课程培训、JavaEE培训
  • 杭州地址:浙江省杭州市江干区九堡旺田书画城A座4层
    咨询电话:0571-86893632 010-82790226-801
    面授课程:Android课程培训、HTML5课程培训、iOS课程培训
  • 青岛校区地址:青岛市市南区金坛路17号青岛职业技术南校区实训楼A4层
    咨询电话:0532-80910752/3 010-82790226-801
    面授课程:Android课程培训、HTML5课程培训、UI交互设计培训、iOS课程培训
  • 了解千锋动态
    关注千锋教育服务号

  • 扫码关注千锋互联
    身边的移动开发导师