Встречается на собеседованиях • сегодня
Можно ли создать 500 потоков
Да, теоретически можно создать 500 потоков в Java, но это не рекомендуется из-за высоких накладных расходов на память и переключение контекста. Каждый поток потребляет ~1MB памяти (стек по умолчанию) и создает нагрузку на планировщик ОС.
Пример создания 500 потоков:
java
for (int i = 0; i < 500; i++) {
new Thread(() -> {
// Логика потока
}).start();
}Лучше использовать ExecutorService с фиксированным пулом потоков (обычно оптимально количество ядер * 2):
java
ExecutorService executor = Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors() * 2);Причины избегать 500 потоков:
- Риск исчерпания памяти (OutOfMemoryError)
- Деградация производительности из-за contention
- Ограничения ОС (например, ulimit в Linux)

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