Назад к вопросам
Бюро 1440
Middle
2
Чем отличается синхронное выполнение от асинхронного?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Синхронное выполнение означает, что задачи выполняются последовательно: следующая задача начнётся только после завершения текущей. В этом режиме программа блокируется, ожидая результат операции, например, чтения файла или сетевого запроса.
Асинхронное выполнение позволяет запускать задачи, не дожидаясь их завершения, и продолжать работу. Результат операции обрабатывается позже, когда он станет доступен, что повышает эффективность при работе с вводом-выводом и многозадачностью.
Пример в Python с использованием asyncio:
import asyncio
async def say_after(delay, what):
await asyncio.sleep(delay)
print(what)
async def main():
print('Начинаем')
await say_after(1, 'Привет') # синхронно ждём
await say_after(1, 'Мир') # потом следующая
asyncio.run(main())
Здесь задачи выполняются последовательно. Если же запустить их одновременно:
async def main():
print('Начинаем')
await asyncio.gather(
say_after(1, 'Привет'),
say_after(1, 'Мир')
)
asyncio.run(main())
Обе задачи выполнятся параллельно, и вывод будет через ~1 секунду сразу для обеих.