简介
协程就是CPU中断
效果上类似生成器函数,yield会记录迭代位置和状态然而会中断执行。
关键字
python中Async模块实现协程操作。
Aysnc:定义协程函数。
await:挂起支持异步的操作
使用
async def p1():print("比利1")await asyncio.sleep(5)print("比利2")async def p2():print("van1")await asyncio.sleep(5)print("van2")async def p3():print("hello1")await asyncio.sleep(5)print("hello2")def main():loop = asyncio.get_event_loop()task = [loop.create_task(p1()),loop.create_task(p2()),loop.create_task(p3())]loop.run_until_complete(asyncio.wait(task))if __name__ == '__main__':main()复制代码
总结
单线程协程操作
1.async标记协程函数
2.await标记支持异步的阻塞方法
3.通过循环器生成任务列表,执行