Sobes.tech
Junior — Middle

Coroutine nasıl ana olay döngüsüyle entegre edilir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Python'da, korutinler ana olay döngüsü (event loop) ile bütünleşir; bu döngü, onların yürütülmesini ve birbirleri arasında geçişleri yönetir. Ana döngü, korutinleri başlatır, asenkron işlemler (örneğin, giriş-çıkış) beklerken duraklatır ve işlem tamamlandığında devam ettirir.

Örneğin, asyncio'da olay döngüsü, await kullanarak başka bir asenkron işlemin sonucunu bekleyebilen bir korutini çalıştırır. Beklerken, olay döngüsü diğer görevleri yerine getirir, böylece kaynaklar verimli kullanılır.

Örnek:

import asyncio

async def say_hello():
    print("Merhaba")
    await asyncio.sleep(1)  # korutini 1 saniye duraklatır
    print("Hoşça kal")

asyncio.run(say_hello())

Burada, asyncio.run olay döngüsünü başlatır ve say_hello korutinini yönetir. await asyncio.sleep(1) ile karşılaşıldığında, korutini duraklatılır ve olay döngüsü diğer görevleri yerine getirebilir, eğer varsa.