首页 > 技术文章 > 如此死锁

inshua 2018-04-27 12:12 原文

await 不会沿用锁,要非常谨慎

import asyncio

lock = asyncio.Lock()

async def a():
    async with lock:
        await b()


async def b():
    async with lock:
        print(1)


if __name__ == '__main__':
    loop = asyncio.get_event_loop()
    loop.run_until_complete(a())

死锁!!

推荐阅读