python(35): 协程池 协程锁 在Python中使用协程池可以提高并发执行效率,下面是一个简单的协程池使用示例: “`python import asyncio async def worker(): print(‘Starting worker…’) await asyncio.sleep(2) print(‘Worker finished.’) async def main(): tasks = [] for i in range(5): tasks.append(asyncio.create_task(worker())) # 创建一个协程池并指定最大并发数 pool = asyncio.Semaphore(2) # 将任务放入协程池中执行 async with pool: await asyncio.gather(*tasks) asyncio.run(main()) “` 在上面的示例中,我们首先定义了一个 `worker` 协程函数,该函数模拟了一个耗时的操作,然后我们创建了 5 个 `worker` 协程任务。 接下来,我们使用 `asyncio.Semaphore` 创建了一个协程池,并指定最大并发数为 2。然后,我们使用 `async with pool:` 将任务放入协程池中执行,并使用 `asyncio.gather` 等待所有任务完成。 这样就实现了一个简单的协程池。在实际应用中,我们可以根据需要调整最大并发数,并使用 `asyncio.create_task` 创建更多的协程任务放入协程池中执行。
2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/25085.html