简要说明__python3中的进程/线程/协程
多任务可以充分利用系统资源,极大提升程序运行效率,多任务的实现往往与 多线程,多进程,多协程有关
稳定性: 进程 > 线程 > 协程
系统资源占用量:进程 > 线程 > 协程
父子关系: 进程(父亲) > 线程(儿子) > 协程(孙子)
多任务可以充分利用系统资源,极大提升程序运行效率,多任务的实现往往与 多线程,多进程,多协程有关
稳定性: 进程 > 线程 > 协程
系统资源占用量:进程 > 线程 > 协程
父子关系: 进程(父亲) > 线程(儿子) > 协程(孙子)
import os
import time
from multiprocessing import Processfrom threading import Threadimport gevent
from gevent import monkeymonkey.patch_all()# 创建两个进程,每个线程两个线程,每个线程两个协程def print_gevent_info(T_info ,G_info):print("在协程执行的函数中,所属的进程号为%d,线程的名称为%s,协程的名称为%s"%(os.getpid(),T_info ,G_info))time.sleep(0.5)def print_thread_info(T_info):print("在线程执行的函数中:线程所属的进程号为:%d,进程的名称为%s"%(os.getpid(),T_info))gevent.joinall([gevent.spawn(print_gevent_info, T_info,"g1"), gevent.spawn(print_gevent_info, T_info, "g2")])time.sleep(2)def creat_two_thread():t1 = Thread(target=print_thread_info, args=("t1",))t2 = Thread(target=print_thread_info, args=("t2",))t1.start()t2.start()def print_process_info(P_info):# 创建线程creat_two_thread()print("在进程执行的函数中,进程的名称为%s进程号为%s"%(P_info,os.getpid()))time.sleep(5)passdef main():#创建两个进程p1 = Process(target=print_process_info, args=("p1",))p2 = Process(target=print_process_info, args=("p2",))# 开启两个进程p1.start()p2.start()if __name__ == "__main__":main()
进程可被看做划分资源的单位,进程只负责请求系统资源,然后交由进程内部的线程负责完成任务(进程相当于车间流水线)
线程是实际执行任务的单位,多任务效率的提升主要依赖于线程的数量(线程相当于流水线的工人)
协程是比线程更小占用更小执行单元
简要说明__python3中的进程/线程/协程相关推荐
- linux的进程/线程/协程系列3:查看linux内核源码——vim+ctags/find+grep
linux的进程/线程/协程系列3:查看linux内核源码--vim+ctags/find+grep 前言 摘要: 1. 下载linux内核源码 2. 打标签方法:vim+ctags 2.1 安装vi ...
- linux的进程/线程/协程系列1:进程到协程的演化
linux的进程/线程/协程系列1:进程到协程的演化 前言 摘要: 1. 一些历史:批处理时代 2. 现代操作系统启动过程 3. 进程(process)的出现 4. 线程(thread)与线程池 5. ...
- Linux的进程/线程/协程系列4:进程知识深入总结:上篇
Linux的进程/线程/协程系列4:进程/线程相关知识总结 前言 本篇摘要: 1. 进程基础知识 1.1 串行/并行与并发 1.2 临界资源与共享资源 1.3 同步/异步与互斥 1.4 进程控制原语 ...
- linux的进程/线程/协程系列5:协程的发展复兴与实现现状
协程的发展复兴与实现现状 前言 本篇摘要: 1. 协同制的发展史 1.1 协同工作制的提出 1.2 自顶向下,无需协同 1.3 协同式思想的应用 2. 协程的复兴 2.1 高并发带来的问题 2.2 制 ...
- 进程 线程 协程 各自的概念以及三者的对比分析
文章目录 1 进程 2 线程 3 进程和线程的区别和联系 3.1 区别 3.2 联系 4 举例说明进程和线程的区别 5 进程/线程之间的亲缘性 6 协程 线程(执行一个函数)和协程的区别和联系 协程和 ...
- Python之进程+线程+协程(异步、selectors模块、阻塞、非阻塞IO)
文章目录 一.IO多路复用 二.selectors模块 本篇文字是关于IO多路复用的更深入一步的总结,上一篇 Python之进程+线程+协程(事件驱动模型.IO多路复用.select与epoll)对I ...
- 4.19 python 网络编程和操作系统部分(TCP/UDP/操作系统概念/进程/线程/协程) 学习笔记
文章目录 1 网络编程概念 1)基本概念 2)应用-最简单的网络通信 2 TCP协议和UDP协议进阶(网络编程) 1)TCP协议和UDP协议基于socket模块实现 2)粘包现象 3)文件上传和下载代 ...
- python进程线程协程区别_Python中 进程 线程 协程
一.进程 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础.在早期面向进程设计的计算机结构中,进程是程序的基本执行实体:在 ...
- 进程 线程 协程_进程,线程,协程那些事
无论我们写出怎样的程序,最后都是由操作系统来运行我们的程序,而操作系统如何管理我们的程序,我们程序的数据如何保存和计算,这些都是操作系统需要处理的事情,我们只要将写好的程序交给操作系统就好. 虽然操作 ...
最新文章
- 电脑装windows和ubuntu,如何卸载ubuntu系统
- 给vim添加自动跳出括号的功能
- 线程工具类(根据电脑逻辑处理器个数控制同时运行的线程个数)
- 演练:有效减法设计,才能开放加法
- MySQL关联更新update
- AGC002E Candy Piles
- c iostream.源码_通达信指标公式源码精准买卖主图指标公式免费分享
- c++_导入/导出excel文件
- python读行-Python如何一次读取N行
- C# 性能优化之斤斤计较篇 一
- Android 的singleTask和singleInstance的一点思考
- Safari浏览器兼容性问题
- 饿了么美团外卖返利程序对接公众号发单机器人分销系统返利源码
- Vue页面如何~及时更新页面数据
- Android开发添加QQ群 跳到QQ聊天页面
- KK今年生日又给了103个建议,我最喜欢这33个
- Sanliao智能家居平台软件设计
- 学习笔记3:Mysql基准测试
- 干掉PPT!现场编码的职级晋升答辩你参加过么?
- Android G711(PCMA/PCMU)、G726、PCM音频转码到AAC