是的,Python的asyncio库可以实现并发执行延迟命令。通过使用异步编程和协程,您可以编写并发代码,而无需创建多个线程或进程。以下是一个简单的示例:
import asyncio async def delayed_command(delay, message): print(f"Waiting for {delay} seconds...") await asyncio.sleep(delay) print(message) async def main(): # 创建一个任务列表,其中包含要并发执行的延迟命令 tasks = [ asyncio.create_task(delayed_command(1, "Task 1 completed.")), asyncio.create_task(delayed_command(2, "Task 2 completed.")), asyncio.create_task(delayed_command(3, "Task 3 completed.")) ] # 等待所有任务完成 await asyncio.gather(*tasks) # 运行事件循环 asyncio.run(main())
在这个示例中,我们定义了一个名为delayed_command
的异步函数,它接受一个延迟时间(以秒为单位)和一个消息。函数使用await asyncio.sleep(delay)
来模拟延迟执行,然后打印完成消息。
在main
函数中,我们创建了一个任务列表,其中包含要并发执行的delayed_command
协程。然后,我们使用asyncio.gather(*tasks)
来等待所有任务完成。最后,我们使用asyncio.run(main())
来运行事件循环并执行主函数。