TGViewer
Python Learning Python Learning @python_per_month · 28.2K subscribers
Post #3249 5.1K
❓ Вопрос на собеседовании

Как работает cooperative multitasking в Python, и почему asyncio не использует потоки?

Ответ ⬇️
В Python asyncio использует кооперативную многозадачность (cooperative multitasking), где задачи передают управление друг другу явно (await). Это отличается от потоков (threading), которые работают конкурентно, но ограничены GIL.

Асинхронность полезна для операций ввода-вывода (сетевые запросы, работа с файлами), так как позволяет одной задаче выполняться, пока другая ждёт результата.


Пример использования ⚙️
import asyncio

async def task(name, delay):
await asyncio.sleep(delay)
print(f"Задача {name} завершена")

async def main():
await asyncio.gather(task("A", 2), task("B", 1))

asyncio.run(main())


Python Learning
👩‍💻
  • 👍 13
  • ❤‍🔥 1
More from @python_per_month
  1. Sep 14, 2026➡️ Memray — профилирование памяти для Python Memray — это современный инструмент для профи…
  2. Aug 17, 2026Срезы Срезы (slices) в Python — это способ получения подстроки (подсписка) из последовател…
  3. Aug 11, 2026Нейросеть, LLM (большие языковые модели) и ИИ-агент Эти слова в разговорах часто использую…
  4. Jul 23, 2026👩‍💻 Задача по Python Создайте функцию find_longest_substring для поиска самой длинной по…
  5. Jul 13, 2026🔥 Три разных человека. Три разных проекта. Один и тот же подход. — Юра взял «скучную» ниш…
  6. Jul 11, 2026⚙️ enumerate() Когда тебе нужно итерировать по списку с доступом к индексу элемента, испол…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →