Веб-версияОткрыть в Telegram

Ветка❓ Вопрос на собеседовании

4 сообщения · –
О
❓ Вопрос на собеседовании Что такое ForkJoinPool в Java, как он работает, и как его использовать для параллельной обработки задач? Ответ ⬇️ ForkJoinPool — это специализированный пул потоков, который рекурсивно делит задачи на подзадачи (fork) и объединяет их результаты (join). Он оптимизирован для задач, которые можно разделить на независимые части, например, вычисление суммы элементов массива. Основными классами являются RecursiveTask для задач с результатом и RecursiveAction для задач без результата. Пример использования ⚙️ import java.util.concurrent.RecursiveTask; import java.util.concurrent.ForkJoinPool; class SumTask extends RecursiveTask<Integer> { private final int[] array; private final int start, end; public SumTask(int[] array, int start, int end) { this.array = array; this.start = start; this.end = end; } @Override protected Integer compute() { if (end - start <= 5) { int sum = 0; for (int i = start; i < end; i++) sum += array[i]; return sum; } else { int mid = (start + end) / 2; SumTask left = new SumTask(array, start, mid); SumTask right = new SumTask(array, mid, end); left.fork(); return right.compute() + left.join(); } } } public class Main { public static void main(String[] args) { int[] array = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; ForkJoinPool pool = new ForkJoinPool(); int result = pool.invoke(new SumTask(array, 0, array.length)); System.out.println("Сумма: " + result); // Сумма: 55 } } Java Learning 👩‍💻
6 · 2.1K ·
  1. A
    главное не забыть про commonPool и то, что он шарится между задачами, а то можно случайно занять все потоки
  2. Ш
    приветсвую, друзья, попалась книга про принципы жизни, думал как обычно будет про успешный успех и то как больше работать, а на самом деле автор объясняет как сформулировать главные принципы и на работе, и в обыденности. если что есть аудио. хорошее объяснение, как отказаться от лишнего и не тратить время на бесполезные вещи, очень советую
  3. В
    Фотография
    нажмите — покажем
    This is magnificent! The deals at WEXPRED are magnificent! Get started: wexpred.com Use promo code AUTUMN for $1000!

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Чего мы не делаем · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем