异步编程
异步编程-----> 异步I/O(AIO)-----> 协作式并发 -----> 提高了CPU的利用率 -----> 协程
- 同步—> 排队 ----> 有顺序 ----> 阻塞和等待
- 异步—> 不排队 ----> 没有顺序 ----> 不阻塞和不等待
要想了解异步编程的用法,首先得清楚迭代器和生成器
- 迭代器(iterator):实现了迭代器协议的对象
- 迭代器协议实际上是两个魔术方法:
- _iter_
- _next_
# 写一个迭代器获取到斐波那契数列:1 1 2 3 5 8 13 21 34 55 ......
class FibTier:
def __init__(self, num):
self.a, self.b = 0, 1
self.count = 0 # 计数器
self.num = num
def __iter__(self):
return self
def __next__(self):
if self.count < self.num:
self.a, self.b = self.b, self.a + self.b # 递推公式
self.count += 1
return self.a
Python异步编程:理解与实践

本文介绍了异步编程的概念,包括异步I/O、协作式并发和提高CPU利用率的优势。阐述了迭代器和生成器在异步编程中的角色,并详细讲解了异步编程的使用方法,如预激活生成器为协程。最后,讨论了异步编程如何通过事件循环和协程实现并发,提升效率。
最低0.47元/天 解锁文章
73





