اندیس API سطح بالا

این صفحه همه‌ی APIهای سطح بالای asyncio را که از ناهمگام/await پشتیبانی می‌کنند، فهرست می‌کند.

وظایف

ابزارهایی برای اجرای برنامه‌های asyncio، ایجاد Taskها، و await روی چندین چیز با مهلت‌های زمانی .

run()

ایجاد حلقه رویداد، اجرای یک هم‌روال، بستن حلقه.

Runner

مدیر زمینه‌ای که فراخوانی‌های متعدد تابع ناهمگام را ساده می‌کند.

Task

شیء Task.

TaskGroup

یک میر زمینه که گروهی از وظایف را نگه می‌دارد. راهی آسان و مطمئن برای منتظر ماندن تا پایان همه‌ی وظایف گروه فراهم می‌کند.

create_task()

یک Task از asyncio را آغاز می‌کند و سپس آن را برمی‌گرداند.

current_task()

Task جاری را برمی‌گرداند.

all_tasks()

تمام وظایفی را که هنوز برای یک حلقه رویداد تمام نشده‌اند، برمی‌گرداند.

await sleep()

برای تعدادی ثانیه متوقف می‌شود.

await gather()

چیزها را زمان‌بندی کنید و به‌صورت همزمان منتظر آن‌ها بمانید.

await wait_for()

با یک مهلت زمانی اجرا کنید.

await shield()

محافظت در برابر لغو.

await wait()

برای تکمیل، پایش کنید.

timeout()

با یک مهلت زمانی اجرا می‌شود. در مواردی که wait_for مناسب نیست، مفید است.

to_thread()

یک تابع را به‌صورت ناهمگام در یک نخ سیستم‌عاملی جداگانه اجرا کنید.

run_coroutine_threadsafe()

یک هم‌روال را از یک نخ دیگر سیستم‌عامل زمان‌بندی کنید.

for in as_completed()

تکمیل را با یک حلقه for پایش کنید.

مثال‌ها

صف‌ها

باید از صف‌ها برای توزیع کار بین چندین Task در asyncio، پیاده‌سازی استخرهای اتصال و الگوهای pub/sub استفاده شود.

Queue

یک صف FIFO.

PriorityQueue

یک صف اولویت‌دار.

LifoQueue

یک صف LIFO.

مثال‌ها

زیرفرایندها

ابزارهایی برای ایجاد زیرفرایندها و اجرای دستورات پوسته.

await create_subprocess_exec()

ایجاد یک زیرفرایند.

await create_subprocess_shell()

یک فرمان پوسته را اجرا کنید.

مثال‌ها

جریان‌ها

APIهای سطح بالا برای کار با ورودی/خروجی شبکه.

await open_connection()

برقراری یک اتصال TCP.

await open_unix_connection()

برقراری اتصال سوکت یونیکس.

await start_server()

یک سرور TCP را راه‌اندازی کنید.

await start_unix_server()

راه‌اندازی یک سرور سوکت یونیکس.

StreamReader

شیء سطح‌بالای async/await برای دریافت داده‌های شبکه.

StreamWriter

شیء سطح بالای ناهمگام/await برای ارسال داده‌های شبکه.

مثال‌ها

همگام‌سازی

اولیه‌های همگام‌سازی مشابه threading که می‌توان از آن‌ها در Taskها استفاده کرد.

Lock

یک قفل انحصار متقابل (mutex).

Event

یک شیء رویداد.

Condition

یک شیء شرطی.

Semaphore

یک سمافور.

BoundedSemaphore

یک سمافور محدود.

Barrier

یک شیء سد.

مثال‌ها

استثناها

asyncio.CancelledError

هنگامی که یک Task لغو شود، پرتاب می‌شود. همچنین ببینید Task.cancel().

asyncio.BrokenBarrierError

هنگامی که یک Barrier شکسته شود، پرتاب می‌شود. همچنین Barrier.wait() را ببینید.

مثال‌ها