异步编程是一种编程范式,它允许程序在等待某些操作完成时继续执行其他任务。这种编程方式可以提高程序的并发性能和响应速度。
在 Python 中,async
和 await
关键字用于定义异步函数和协程。异步函数是一种特殊的函数,它可以在等待某些操作完成时暂停执行,并在操作完成后继续执行。协程是一种轻量级的线程,它可以在不同的任务之间切换,从而实现并发执行。
以下是一个简单的异步编程示例:
import asyncio
async def foo():
print("开始执行 foo")
await asyncio.sleep(1)
print("结束执行 foo")
async def bar():
print("开始执行 bar")
await asyncio.sleep(2)
print("结束执行 bar")
async def main():
task1 = asyncio.create_task(foo())
task2 = asyncio.create_task(bar())
await task1
await task2
asyncio.run(main())
在这个示例中,我们定义了两个异步函数 foo
和 bar
,它们分别使用 await
关键字等待 asyncio.sleep()
函数完成。然后,我们在 main
函数中创建了两个任务,并使用 await
关键字等待它们完成。最后,我们使用 asyncio.run()
函数运行 main
函数。