协程并发
在Python中,可以使用asyncio库来创建协程,并使用asyncio.gather来实现Golang风格的并发。
import asyncio """ 定义一个协程coroutine_example,它只是简单地等待一段时间(通过asyncio.sleep)。 然后在main协程中,我们创建了一个协程列表,并使用asyncio.gather来并发执行它们。 这样,所有的协程将同时运行,而不是顺序执行。最后,asyncio.run用来运行顶级协程。 """ async def coroutine_example(number): print(f"Coroutine {number} starting") await asyncio.sleep(2) # 模拟IO操作 print(f"Coroutine {number} finished") return number async def main(): # main协程 # 创建一个协程列表 coroutines = [coroutine_example(i) for i in range(10)] # 使用asyncio.gather来并发执行 results = await asyncio.gather(*coroutines) print(results) if __name__ == '__main__': asyncio.run(main())
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步