Python學習筆記__20.3章 async/await

# 這是學習廖雪峯老師python教程的學習筆記

1、概覽

asyncio提供的@asyncio.coroutine可以把一個generator標記爲coroutine類型,然後在coroutine內部用yield from調用另一個coroutine實現異步操作。

爲了簡化並更好地標識異步IO,從Python 3.5開始引入了新的語法asyncawait,可以讓coroutine的代碼更簡潔易讀。

 

asyncawait是針對coroutine的新語法,要使用新的語法,只需要做兩步簡單的替換:

  1. @asyncio.coroutine替換爲async

  2. yield from替換爲await

2、比較代碼

    1、上一節代碼

@asyncio.coroutine

def hello():

    print("Hello world!")

    r = yield from asyncio.sleep(1)

    print("Hello again!")

    2、新語法代碼

async def hello():

    print("Hello world!")

    r = await asyncio.sleep(1)

    print("Hello again!")


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章