Python3 异步编程之进程与线程
Python3 异步编程之进程与线程-1
一、了解进程间通信
-
进程间通信
-
进程
-
线程
-
线程 vs 进程
-
IO模型
-
并发 vs 并行
-
异步 vs 同步
二、多线程与多进程的用法
-
计算密集型 vs I/O密集型
-
GIL
-
多线程
-
多进程
三、协程的好处与用法
-
协程
-
yield
-
yield from
四、进程间通信-IPC 01
-
管道:无名管道和命名管道(FIFO)
-
消息队列
-
信号量
-
共享存储
-
Socket
-
Streams
相关定义:
管道:

命名管道:

消息队列:

信号量:

共享内存:

元子操作:

五、进程特征
-
动态性
-
并发性
-
独立性
-
异步性
六、进程状态
-
运行 running 占用了CPU正在运行
-
就绪 ready 等待CPU
-
阻塞 blocked 暂时不具备运行条件,即使CPU空闲
相关定义:
进程控制块:
![1530841461357726.png 7.png]()

Unix系统中的几个进程控制操作:

线程:

线程之间共享:

线程的独立信息:

线程的创建:

七、了解进程间通信02
I/O模型
-
阻塞式
-
非阻塞式
-
I/O复用
-
信号驱动式
-
异步I/O
相关定义:
I/O操作的两个阶段:


阻塞式I/O:

非阻塞式I/O:

I/O复用:


信号驱动式:

异步I/O:


并发和并行:

异步与同步:

异步的实现:

处理多任务操作:
-
多进程/多线程
-
I/O模型
-
协程
多线程、多进程实现模式:master worker模式
master分配任务 多进程缺点:创建进程资源需要多frok()函数 多线程缺点:某个线程出问题,整个挂掉




浙公网安备 33010602011771号