В чем разница между асинхронным и синхронным подходом

Python Junior Рунити
В чем разница между асинхронным и синхронным подходом
Ответы
Синхронный код выполняется последовательно - каждая операция блокирует выполнение до своего завершения. Асинхронный позволяет выполнять задачи параллельно, не дожидаясь завершения предыдущих операций. Ключевые различия: - **Блокировка** - синхронный код блокирует поток, асинхронный нет - **Производительность** - асинхронный лучше подходит для I/O-bound задач - **Сложность** - асинхронный код сложнее в написании и отладке Пример синхронного кода: ``` import time def task(): time.sleep(1) print("Task done") start = time.time() for _ in range(3): task() print(f"Time: {time.time() - start:.2f}s") # ~3s ``` Пример асинхронного: ``` import asyncio async def task(): await asyncio.sleep(1) print("Task done") async def main(): start = time.time() await asyncio.gather(*[task() for _ in range(3)]) print(f"Time: {time.time() - start:.2f}s") # ~1s asyncio.run(main()) ``` Асинхронность достигается через event loop и корутины (`async/await`). Для CPU-bound задач лучше использовать многопоточность/многопроцессорность.