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.