Встречается на собеседованиях • сегодня
Какой механизм используется под капотом parallelStream
ParallelStream использует под капотом ForkJoinPool из java.util.concurrent. По умолчанию он создает пул потоков с размером, равным количеству ядер процессора (Runtime.getRuntime().availableProcessors()).
Работает по принципу "разделяй и властвуй":
1. Задача разбивается на подзадачи
2. Подзадачи выполняются параллельно
3. Результаты объединяются
Пример:
```java
List numbers = Arrays.asList(1, 2, 3, 4, 5);
int sum = numbers.parallelStream()
.mapToInt(Integer::intValue)
.sum();
```
Важно:
- Порядок обработки не гарантируется
- Не thread-safe структуры могут вызвать проблемы
- Можно настроить свой ForkJoinPool через System.setProperty("java.util.concurrent.ForkJoinPool.common.parallelism", "N")

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