- function fetch_data จะ print string ออกมา และระหว่าง print จะมี sleep 2 วินาที
- function print_numbers จะ print ตัวเลข 1-10 และระหว่าง print จะมี sleep 0.5 วินาที
- function main จะเรียกใช้ fetch_data และ print_numbers
- บรรทัดสุดท้ายเรียกใช้ function main
โค้ด: เลือกทั้งหมด
import asyncio
async def fetch_data():
print('start fetching')
await asyncio.sleep(2)
print('done fetching')
return {'data': 1}
async def print_numbers():
for i in range(10):
print(i)
await asyncio.sleep(0.5)
async def main():
task2 = asyncio.create_task(print_numbers())
await fetch_data()
await task2
asyncio.run(main())
ทำไม print_numbers() ถึง print แทรก fetch_data() ทั้งๆที่ fetch_data() ยังทำงานไม่เสร็จ