Sobes.tech
Junior — Middle
99

Kurotinlarning ishlash prinsipi va ular bajarilish vaqtida qanday boshqarilishini tushuntiring.

AIdan javob

sobes.tech AI

Koroutinlar — bu, o'z ishini to'xtatib, keyin davom ettira oladigan va holatini saqlab qoladigan funksiyalardir. Python'da koroutinlar async def kalit so'zi yordamida amalga oshiriladi va voqea aylanishi (event loop) orqali boshqariladi.

Ishlash davomida, korutin "kutish" (await) orqali asinxron operatsiya tugashini kutishi mumkin, bu esa boshqaruvni boshqa vazifalarga o'tkazadi. Bu, kirish-chiqish operatsiyalarini samarali bajarishga va oqimni bloklamaslikka imkon beradi.

Oddiy korutin misoli:

import asyncio

async def say_hello():
    print("Salom")
    await asyncio.sleep(1)  # korutini 1 soniya to'xtatadi
    print("Dunyo")

asyncio.run(say_hello())

Bu yerda, await voqea aylanishiga boshqaruvni o'tkazadi, bu esa boshqa koroutinlar orasida o'tishni ta'minlaydi va asinxronlikni ta'minlaydi.

Shu tarzda, koroutinlar asinxron kod yozishni soddalashtiradi va parallel vazifalarni boshqarishni osonlashtiradi.