Стандартная библиотека asyncio это стандарт (начиная с Py3.4) для работы с асинхронным кодом. Но эта библиотека достаточно низкоуровневая, со своими проблемами, устаревшими подходами.
Чтобы исправить это, были созданы разные обертки и альтернативы с реализацией популярных инструментов и паттернов асинхронного программирования. Это такие библиотеки как:
- trio: улучшает корректность выполнения, не оставляя потерянных корутин при ошибках, то есть предлагает Structured Concurrency из коробки.
- curio: упрощение синтаксиса и читаемости кода, больше похоже на работу с потоками.
- anyio: универсальная обертка над asyncio или trio плюс множество вспомогательных инструментов.
anyio используется в FastAPI как основная библиотека для работы с асинхронным кодом и вызовом синхронного кода из асинхронного.
В общем, рекомендую почитать про возможности anyio, возможно вы более не будете использовать чистый asyncio в своих проектах)
Это совсем не значит что дефолтный asyncio плох, он тоже даёт достаточный для работы функционал и продолжает развиваться. Например, в версии 3.11 появились TaskGroup, с похожим на trio функционалом. Так что он тоже актуален, просто придется больше написать кода самостоятельно.
#libs#async
Драконовы Горы в ЮАР – место, где реальность сливается с фантазией
Драконовы Горы в ЮАР – удивительный и мистический уголок природы, который поражает своей красотой и величием. Массивная горная цепь, вытянувшаяся на горизонте, словно обиталище сказочных драконов, включает в себя самые высокие горы в ЮАР. Большая часть территорий Драконовых гор объявлена объектом Всемирного наследия ЮНЕСКО.
____
The Drakensberg in South Africa – a place where reality meets fantasy
The Drakensberg in South Africa is a mystical corner of nature that amazes with their beauty and grandeur. The massive mountain range, stretching across the horizon like the dwelling place of fairy dragons, includes the highest mountains in South Africa. Much of the Drakensberg area has been declared a UNESCO World Heritage Site.
#RSA # ЮАР