Встречается на собеседованиях • сегодня
В чём разница между асинхронностью и многопоточностью
Асинхронность — это модель выполнения задач без блокировки потока, где операции могут выполняться в фоне с возможностью ожидания (например, I/O операции). Многопоточность — параллельное выполнение кода в нескольких потоках.
Ключевые различия:
- Асинхронность не создаёт новые потоки (использует пул потоков или механизмы вроде IOCP).
- Многопоточность требует управления потоками (Thread), что может привести к contention и накладным расходам.
Пример:
csharp
// Асинхронность (не блокирует поток)
async Task GetDataAsync() {
var data = await HttpClient.GetStringAsync("url");
}
// Многопоточность (параллельные потоки)
void ProcessInParallel() {
var thread = new Thread(() => { /* работа */ });
thread.Start();
}Асинхронность эффективна для I/O-bound задач, многопоточность — для CPU-bound. В C# async/await упрощает асинхронный код без ручного управления потоками.

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