Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Python: asyncio, task, coroutine

Что такое Task? Как запустить несколько задач?

Вопрос объясняет концепцию Task в asyncio и способы параллельного выполнения.

Короткий ответ

Task — это обёртка вокруг корутины для параллельного выполнения. Для запуска нескольких задач используйте asyncio.create_task() или asyncio.gather().

Длинный ответ

1. Создание задач:

async def fetch_data(url):
    await asyncio.sleep(1)
    return f"Data from {url}"

async def main():
    # Вариант 1: create_task
    task1 = asyncio.create_task(fetch_data("url1"))
    task2 = asyncio.create_task(fetch_data("url2"))

    # Вариант 2: gather
    results = await asyncio.gather(
        fetch_data("url1"),
        fetch_data("url2")
    )

2. Отличия:

  • create_task(): запускает корутину "в фоне"

  • gather(): ждёт завершения всех переданных корутин

Вывод:
Task — основная единица выполнения в asyncio.

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    1

  • Сложность:

    5

Навыки

  • Python

    Python

Ключевые слова

#asyncio

#task

#coroutine

Подпишись на Python Developer в телеграм

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.