asyncio

Python asyncio moduli

❮ Python o‘rnatilgan modullari


Misol

asyncio.run() yordamida oddiy korutinani (coroutine) ishga tushiring:

import asyncio async def main():   print("hello")   await asyncio.sleep(0)   print("world") asyncio.run(main())
O‘zingiz sinab ko‘ring »

Ta’rif va qo‘llanilishi

asyncio moduli bir vaqtda ishlaydigan (concurrent) kod uchun hodisalar sikli (event loop), vazifalar (tasks) va kiritish-chiqarish primitivlarini taqdim etadi.

Tuzilmali asinxron dasturlar yozish, korutinalarni rejalashtirish hamda tarmoq, quyi jarayonlar va sinxronizatsiya primitivlari bilan ishlash uchun async/awaitdan foydalaning.


A’zolar

A’zo Tavsif
all_tasks()Joriy hodisalar sikli uchun hali tugallanmagan barcha vazifalar to‘plamini (Set) qaytaradi.
as_completed()Kutilayotgan vazifalar tugashi bilanoq ularning natijalari bo‘ylab iteratsiya qiladi.
BoundedSemaphoreSemaphorega o‘xshaydi, lekin hisoblagichning boshlang‘ich qiymatdan oshib ketishiga yo‘l qo‘ymaydi.
CancelledErrorVazifa bekor qilinganda ko‘tariladigan istisno.
ConditionQandaydir umumiy holat o‘zgarishini kutishi kerak bo‘lgan korutinalarni muvofiqlashtiradi.
create_subprocess_exec()Quyi jarayonni (exec ko‘rinishida) ishga tushiradi va u bilan asinxron ravishda ishlaydi.
create_subprocess_shell()Tizim shell’i orqali quyi jarayonni ishga tushiradi.
create_task()Korutina obyektining bajarilishini Task sifatida rejalashtiradi.
current_task()Ayni paytda bajarilayotgan Task’ni qaytaradi.
EventKorutinalarning signal kutishi uchun sinxronizatsiya primitivi.
gather()Bir nechta awaitable obyektni bir vaqtda ishga tushiradi va natijalarni yig‘adi.
get_event_loop()Joriy hodisalar siklini qaytaradi (Python 3.10+ da eskirgan; get_running_loop()’dan foydalaning).
get_running_loop()Ayni paytda ishlayotgan hodisalar siklini qaytaradi.
LifoQueueIshlab chiqaruvchi/iste’molchi (producer/consumer) korutinalar uchun stek (LIFO) navbati.
LockKorutinalar uchun o‘zaro istisno qulfi (mutex).
new_event_loop()Yangi hodisalar sikli obyektini yaratadi va qaytaradi.
open_connection()TCP mijoz ulanishini ochadi.
PriorityQueueElementlar ustuvorlik bo‘yicha olinadigan navbat (avval kichikroq qiymatlar).
QueueIshlab chiqaruvchi/iste’molchi korutinalar uchun FIFO navbati.
run()asyncio dasturining asosiy kirish nuqtasini ishga tushiradi.
run_coroutine_threadsafe()Korutinani boshqa oqimdan (thread) hodisalar sikliga yuboradi.
SemaphoreBir vaqtdagi murojaatlarni cheklash uchun hisoblovchi semafor.
set_event_loop()Joriy oqim (thread) uchun joriy hodisalar siklini o‘rnatadi.
shield()Awaitable obyektni bekor qilinishdan himoya qiladi (tashqi kutish bekor qilinishi mumkin).
sleep()Berilgan vaqt o‘tgach tugaydigan korutina.
start_server()TCP server yaratadi.
StreamReaderTarmoq ulanishlaridan ma’lumot o‘qish uchun asinxron oqim o‘quvchisi.
StreamWriterTarmoq ulanishlariga ma’lumot yozish uchun asinxron oqim yozuvchisi.
TaskKorutinani rejalashtiradigan va ishga tushiradigan o‘ram (wrapper); natijani olish uchun uni await qiling.
timeout()await ifodalaridan iborat blokka vaqt chegarasini (timeout) qo‘llash uchun asinxron kontekst menejeri.
TimeoutErrorAmal o‘z vaqt chegarasidan oshib ketganda ko‘tariladigan istisno.
to_thread()Bloklovchi funksiyani alohida oqimda (thread) ishga tushiradi va natijani kutadi (await).
wait()Vazifalar to‘plami shartga ko‘ra (FIRST_COMPLETED/ALL_COMPLETED) tugashini kutadi.
wait_for()Awaitable obyektni vaqt chegarasi bilan ishga tushiradi va juda uzoq davom etsa, uni bekor qiladi.

❮ Python o‘rnatilgan modullari

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!