Встречается на собеседованиях • сегодня
Что лучше асинхронность, синхронность или многопоточность (multithreading)
Выбор зависит от задачи:
Синхронность - простой и понятный подход, но блокирует выполнение при I/O операциях. Подходит для простых скриптов и CPU-bound задач.
Многопоточность - эффективна для I/O-bound задач в CPython, но имеет GIL ограничения. Может вызывать race conditions. Пример:
python
from threading import Thread
def task():
# I/O операция
pass
threads = [Thread(target=task) for _ in range(10)]
for t in threads: t.start()
for t in threads: t.join()
text
**Асинхронность** (asyncio) - оптимальна для I/O-bound задач с большим количеством соединений. Не требует потоков, но весь код должен быть async:
```python
import asyncio
async def task():
await asyncio.sleep(1)
async def main():
await asyncio.gather(*[task() for _ in range(10)])Выбор:
- CPU-bound: синхронность или multiprocessing
- I/O-bound с многими соединениями: asyncio
- I/O-bound с legacy кодом: потоки
- Смешанные задачи: комбинация подходов

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы