Встречается на собеседованиях • сегодня

Как задать количество потоков в параллельном Stream

В параллельном Stream количество потоков можно задать через ForkJoinPool. По умолчанию используется ForkJoinPool.commonPool(), но можно создать свой пул:

java
ForkJoinPool customPool = new ForkJoinPool(4); // 4 потока
customPool.submit(() -> {
    List.of(1, 2, 3, 4).parallelStream()
        .forEach(i -> System.out.println(Thread.currentThread().getName()));
}).join();

Или через системное свойство:

java
System.setProperty("java.util.concurrent.ForkJoinPool.common.parallelism", "4");

Важно: изменение общего пула влияет на все параллельные стримы в JVM. Для изоляции лучше использовать отдельный ForkJoinPool.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы