Python异步编程:从asyncio到Tornado的全面指南
1. asyncio任务操作
1.1 asyncio.Task简介
asyncio
模块提供了 asyncio.Task()
方法,用于通过任务处理协程。 asyncio.Task
类是 asyncio.Future
的子类,旨在管理协程。任务负责在事件循环中执行协程对象。当协程被包装在任务中时,它会将任务连接到事件循环,并在循环启动时自动运行,从而提供了一种自动驱动协程的机制。
更多关于 asyncio
任务操作的信息,请参考文档: https://docs.python.org/3.7/library/asyncio-task.html 。
1.2 代码示例
以下是一个使用 asyncio
进行任务操作的示例代码:
#!/usr/bin/python3
import asyncio
import time
@asyncio.coroutine
def task_sleep(name, loop, seconds=1):
future = loop.run_in_executor(None, time.sleep, seconds)