多任务处理是指用户可以在同一时间内运行多个应用程序(执行多个任务)
执行方式有两种:并发与并行

并发

交替执行,比如你的电脑上开启了软件1和软件2两个软件,如果你的电脑是单核,则cpu操作操作系统去轮流执行任务,严格上将并发并不是一起执行任务

并行

与并发不同,此时电脑上应是多核处理器,此时是一起同时运行多个软件

进程

当你的电脑上运行了程序,在后面就会有一个或者多个进程开启,它是操作系统分配的基本单位,进程也有主进程和子进程之分,一个主进程里面可以自己开启多个子进程
进程之间不共享全局变量

线程

每一个进程后面都会有几个线程(默认开启一个进程会有一个主线程,程序员可以通过代码开启子进程),它是cpu调度的基本单位
线程执行的时候是无序的
线程之间共享全局变量

在python中实现

我们可以用python中的multiprocessing模块来实现多进程的使用,可以使用threading模块来实现多线程的使用

什么是多任务、进程、线程相关推荐

  1. 02 线程简介 多任务 多线程 普通方法调用和多线程 程序.进程.线程 Proces与Thread 核心概念

    线程简介 任务,进程,线程,多线程 多任务 多任务处理是指用户可以在同一时间内运行多个应用程序,每个应用程序被称作一个任务 多线程 原来是一条路,慢慢因为车太多了,道路堵塞,效率极低. 为了提高使用的 ...

  2. 简要说明__python3中的进程/线程/协程

    多任务可以充分利用系统资源,极大提升程序运行效率,多任务的实现往往与 多线程,多进程,多协程有关 稳定性: 进程 > 线程 > 协程 系统资源占用量:进程 > 线程 > 协程 ...

  3. linux的进程/线程/协程系列5:协程的发展复兴与实现现状

    协程的发展复兴与实现现状 前言 本篇摘要: 1. 协同制的发展史 1.1 协同工作制的提出 1.2 自顶向下,无需协同 1.3 协同式思想的应用 2. 协程的复兴 2.1 高并发带来的问题 2.2 制 ...

  4. linux的进程/线程/协程系列1:进程到协程的演化

    linux的进程/线程/协程系列1:进程到协程的演化 前言 摘要: 1. 一些历史:批处理时代 2. 现代操作系统启动过程 3. 进程(process)的出现 4. 线程(thread)与线程池 5. ...

  5. python全栈(一)网络通信与服务器之多任务-进程

    将上传一些test的代码: 地址后续补上 目录 前言 一. 进程以及状态 1.概念辨析 2.进程的状态 二.进程的创建-multiprocessing 三.进程和线程对比 1. 功能: 2. 运行原理 ...

  6. 易语言多线程大漠多线程进程线程多线程

    进程-线程-多线程 1.进程(process) 狭义定义:进程就是一段程序的执行过程 简单的来讲进程的概念主要有两点: 第一,进程是一个实体.每一个进程都有它自己的地址空间,一般情况下,包括文本区域( ...

  7. java基础巩固-宇宙第一AiYWM:为了维持生计,四大基础之OS_Part_1整起(进程线程协程并发并行、进程线程切换进程间通信、死锁\进程调度策略、分段分页、交换空间、OS三大调度机制)

    PART0:OS,这货到底是个啥? OS,是个啥? OS的结构们: 存储器: 存储器的层次结构: 内存:我们的程序和数据都是存储在内存,我们的程序和数据都是存储在内存,每一个字节都对应一个内存地址.内 ...

  8. 浏览器层面优化前端性能(1):Chrom组件与进程/线程模型分析

    现阶段的浏览器运行在一个单用户,多合作,多任务的操作系统中.一个糟糕的网页同样可以让一个现代的浏览器崩溃.其原因可能是一个插件出现bug,最终的结果是整个浏览器以及其他正在运行的标签被销毁. 现代操作 ...

  9. php多线程模型,PHP进程模型、进程通讯方式、进程线程的区别分别有哪些?

    PHP进程模型是一个正在执行的程序,可以分配给处理器并由处理器执行的一个实体:PHP进程通讯方式有管道及有名管道,信号,共享内存等:PHP进程线程的区别有进程是资源的分配和调度的一个独立单元,而线程是 ...

  10. Java多线程复习:3(在操作系统中查看和杀死进程线程)

    此博客是记录自己学习过程的记录,仅做参考 Windows下查看和杀死进程线程 查看所有进程 tasklist 查看指定关键字的进程 tasklist | findstr + 关键字 Java程序运行的 ...

最新文章

  1. php 限制刷新,PHP禁止频繁刷新方法
  2. HDU3371(最小生成树)
  3. python英语单词大全-使用Python进行英文单词分割
  4. 【BZOJ】1667: [Usaco2006 Oct]Cows on Skates滑旱冰的奶牛
  5. mysql命令去重_MySQL去重的方法整理
  6. Phinecos(洞庭散人) 专注于开源技术的研究与应用 TinyXML:一个优秀的C++ XML解析器
  7. java jna jni_JNA, Java Native开发利器
  8. CCF201509-1 数列分段
  9. Linux之Keepalived实现服务器集群高可用
  10. 【SPOJ1297】Palindrome (SA+RMQ)
  11. Kubernetes面试题
  12. 商业价值:谷歌眼中的搜索未来
  13. APP测试---adb命令使用(monkey、input、11大事件等),附按键表(keycode)
  14. matlab求系统根轨迹代码_第九讲? 根轨迹法
  15. html下拉选择图片,图片+JavaScript+CSS打造漂亮的select下拉选择框
  16. 工程项目管理系统-----装修装饰行业的管理软件
  17. scons 手册_SCons笔记(详细版)
  18. zblog mysql修改_ZBlog教程 之 修改ZBlog数据库前缀
  19. 多相滤波 信道化接收机 matlab程序,基于复多相滤波器组的信道化接收机
  20. 排序算法:冒泡排序(代码优化)

热门文章

  1. java数据接口之链表_Java数据结构和算法之链表
  2. 【2012百度之星/资格赛】F:百科蝌蚪团
  3. The Common Language Runtime (CLR)
  4. mysql DATETIME和TIMESTAMP类型
  5. 新辰:关于个人站点安全问题的分析及对策探讨
  6. PX4地面站QGroundControl在ubuntu下的安装
  7. GridSplitter的一个简单例子
  8. hdu_1233(最小生成树)
  9. 【转】java string类的方法及说明
  10. 查找xml文件中某接点的值