Індекс API високого рівня

На цій сторінці перераховано всі асинхронні API високого рівня з підтримкою функції очікування.

завдання

Утиліти для запуску асинхронних програм, створення завдань і очікування кількох речей із тайм-аутом.

run()

Створіть цикл подій, запустіть співпрограму, закрийте цикл.

Runner

A context manager that simplifies multiple async function calls.

Task

Об’єкт завдання.

TaskGroup

A context manager that holds a group of tasks. Provides a convenient and reliable way to wait for all tasks in the group to finish.

create_task()

Start an asyncio Task, then returns it.

поточне_завдання()

Повернути поточне завдання.

усі_завдання()

Return all tasks that are not yet finished for an event loop.

чекати sleep()

Поспати кілька секунд.

чекати gather()

Плануйте та чекайте подій одночасно.

очікувати wait_for()

Запустити з тайм-аутом.

чекати shield()

Щит від скасування.

чекати wait()

Монітор для завершення.

timeout()

Run with a timeout. Useful in cases when wait_for is not suitable.

до_потоку()

Асинхронний запуск функції в окремому потоці ОС.

run_coroutine_threadsafe()

Заплануйте співпрограму з іншого потоку ОС.

for in as_completed()

Контроль завершення за допомогою циклу for.

Приклади

Черги

Черги слід використовувати для розподілу роботи між декількома асинхронними завданнями, впровадження пулів підключень і шаблонів pub/sub.

Queue

Черга FIFO.

PriorityQueue

Пріоритетна черга.

LifoQueue

Черга LIFO.

Приклади

Підпроцеси

Утиліти для створення підпроцесів і виконання команд оболонки.

чекати create_subprocess_exec()

Створіть підпроцес.

чекати create_subprocess_shell()

Виконайте команду оболонки.

Приклади

Потоки

API високого рівня для роботи з мережевим вводом-виводом.

чекати open_connection()

Встановіть з’єднання TCP.

чекати open_unix_connection()

Встановіть підключення через сокет Unix.

чекати start_server()

Запустіть сервер TCP.

чекати start_unix_server()

Запустіть сокет-сервер Unix.

StreamReader

Високорівневий об’єкт async/wait для отримання мережевих даних.

StreamWriter

Високорівневий об’єкт async/await для надсилання мережевих даних.

Приклади

Синхронізація

Примітиви потокової синхронізації, які можна використовувати в Завданнях.

Lock

Блокування м’ютексу.

Event

Об’єкт події.

Condition

Об’єкт умови.

Semaphore

Семафор.

BoundedSemaphore

Обмежений семафор.

Barrier

A barrier object.

Приклади

Винятки

asyncio.CancelledError

Піднімається, коли завдання скасовано. Дивіться також Task.cancel().

asyncio.BrokenBarrierError

Raised when a Barrier is broken. See also Barrier.wait().

Приклади