Встречается на собеседованиях • сегодня

Что такое Future в asyncio

Future в asyncio — это объект, представляющий результат асинхронной операции, который может быть еще не готов. Это аналог Promise из других языков. Future используется для отслеживания состояния операции (ожидание/завершено) и получения результата или исключения.

Основные методы:

  • done() — проверяет, завершена ли операция
  • result() — возвращает результат или выбрасывает исключение
  • add_done_callback() — добавляет колбэк при завершении

Пример:

python
import asyncio

async def set_future_value(future):
    await asyncio.sleep(1)
    future.set_result("Готово!")

async def main():
    loop = asyncio.get_event_loop()
    future = loop.create_future()
    loop.create_task(set_future_value(future))
    result = await future
    print(result)

asyncio.run(main())

Обычно Futures создаются не напрямую, а через высокоуровневые API, такие как asyncio.create_task(). Они лежат в основе корутин и задач asyncio.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы