CodeBlanks Logo Icon CodeBlanks

Özet - Async temelleri

async/await ve create_task'ı birleştirerek paralel bir indirme yazarsın.

Özet - Async temelleri

Bu grupta async temellerini gördün. async def bir coroutine tanımlar; await bekleme noktası işaretler; asyncio.run en üstten çalıştırır; asyncio.sleep bloklamadan bekler; create_task arka planda Task oluşturur.

Son görevde async def, await ve asyncio.run'u bir arada kullanacaksın: bir coroutine'i await ile başka bir coroutine'den çağıracaksın.

Uygulama async def + await birleşimi

import asyncio ile başla. async def inner() fonksiyonu return 5 yapsın. async def fetch() fonksiyonu return await inner() + 1 yapsın. print(asyncio.run(fetch())) çağrısını ekle.

Başlangıç kodu

main.py
# asyncio modülünü içe aktar
# inner adında bir coroutine tanımla; 5 döndürsün
# fetch adında bir coroutine tanımla; inner'ı bekle, 1 ekle ve döndür
# fetch çağrısının sonucunu asyncio.run ile yazdır

Örnek çözüm

main.py
import asyncio

async def inner():
    return 5

async def fetch():
    return await inner() + 1

print(asyncio.run(fetch()))

Beklenen çıktı

6

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Bir coroutine'i en üstten çalıştıran fonksiyon hangisi?

  • asyncio.run Doğru cevap
  • create_task
  • asyncio.sleep
  • time.sleep

Açıklama: asyncio.run bir coroutine'i en üstten çalıştırır.

2 Özet: async/await

Soru
async def fetch():
    ____ inner()
Cevap
async def fetch():
    await inner()

Açıklama: await inner() ile bir başka coroutine beklenir.

3 Grup araçlarını eşleştir

Kavram Anlamı
async def Coroutine tanımlar
await Bekleme noktası
asyncio.run En üstten çalıştırır
create_task Arka plan Task

İleri seviye bölümündeki tüm dersler