协程调用的本质是创建task对象,扔进event loop内,由这个事件循环决定协程函数的调用时机。
在async def函数内如果想调用其它async def函数需要使用关键字await。
import asyncio
async def test_a_func(value1: int, value2: int):
print('add ret: ' + str(value1 + value2))
async def test_b_func(value3: int, value4: int):
print('multi ret: ' + str(value3 * value4))
async def func():
print('race start.')
await asyncio.sleep(1)
await test_a_func(1, 2)
await asyncio.sleep(1)
await test_b_func(3, 4)
await asyncio.sleep(1)
print('race end.')
if __name__ == '__main__':
asyncio.run(func())