asyncio 异步编程

数据库63

首先了解一下协程,协程的本质就是一条线程,多个任务在一条线程上来回切换,协程的所有切换都是基于用户,只有在用户级别才能感知到的 IO 才会用协程模块来规避,在 python 中主要使用的协程模块是 asyncio,并且基于 async 和 await 关键字的协程可以实现异步编程,这也是目前 python 异步相关的主流技术。

事件循环实际上是异步编程中非常重要的一环。这可以看作是一个无止境的循环。它将检查并执行一些代码。

[En]

Event loop is actually a very important link in asynchronous programming. It can be regarded as an endless loop. It will check and execute some code.

示例:伪代码

任务列表 = [ 任务1, 任务2, 任务3,... ]

while True:
    可执行的任务列表,已完成的任务列表 = 去任务列表中检查所有的任务,将'可执行'和'已完成'的任务返回

    for 就绪任务 in 已准备就绪的任务列表:
        执行已就绪的任务

    for 已完成的任务 in 已完成的任务列表:
        在任务列表中移除 已完成的任务

    如果 任务列表 中的任务都已完成,则终止循环
输入验证码查看隐藏内容

扫描二维码关注本站微信公众号 Johngo学长
或者在微信里搜索 Johngo学长
回复 svip 获取验证码
wechat Johngo学长