Python3 异步编程之进程与线程-1
一、了解进程间通信
- 进程间通信
- 进程
- 线程
- 线程 vs 进程
- IO模型
- 并发 vs 并行
- 异步 vs 同步
二、多线程与多进程的用法
- 计算密集型 vs I/O密集型
- GIL
- 多线程
- 多进程
三、协程的好处与用法
- 协程
- yield
- yield from
四、进程间通信-IPC 01
- 管道:无名管道和命名管道(FIFO)
- 消息队列
- 信号量
- 共享存储
- Socket
- Streams
相关定义:
管道:
命名管道:
消息队列:
信号量:
共享内存:
元子操作:
五、进程特征
- 动态性
- 并发性
- 独立性
- 异步性
六、进程状态
- 运行 running 占用了CPU正在运行
- 就绪 ready 等待CPU
- 阻塞 blocked 暂时不具备运行条件,即使CPU空闲
相关定义:
进程控制块:
Unix系统中的几个进程控制操作:
线程:
线程之间共享:
线程的独立信息:
线程的创建:
七、了解进程间通信02
I/O模型
- 阻塞式
- 非阻塞式
- I/O复用
- 信号驱动式
- 异步I/O
相关定义:
I/O操作的两个阶段:
阻塞式I/O:
非阻塞式I/O:
I/O复用:
信号驱动式:
异步I/O:
并发和并行:
异步与同步:
异步的实现:
处理多任务操作:
- 多进程/多线程
- I/O模型
- 协程
多线程、多进程实现模式:master worker模式
master分配任务
多进程缺点:创建进程资源需要多frok()函数
多线程缺点:某个线程出问题,整个挂掉
原文地址:http://blog.51cto.com/445153/2136973
时间: 2024-10-12 23:27:01