Вредные советы Java: просто используй Parellel Stream

Stream'ы в java явление давно не новое. Старая добрая Java 8 появилась на свет более 10 лет назад. С появлением Stream API жизнь стала проще и веселее. Но есть в Stream API два гадких утёнка: Stream#close и Stream#parallel. С первым все достаточное просто — если не уверен в источнике откуда берется Stream — то он может быть вполне себе ресурсом и требовать try‑with‑resources (привет java.nio.file.Files#list ). Cо вторым куда веселее...

https://habr.com/ru/articles/929120/

#forkjoinpool #stream_api #java

Вредные советы Java: просто используй Parellel Stream

Привет, Хабр! В ежегодных поисках ответа на вопрос «как же удобно и просто распараллелить исполнение задач на Java», я частенько натыкаюсь на вариант основанный...

Хабр

Как обобрать дерево в несколько потоков?

Всем привет, меня зовут Антон, я Java‑разработчик в Сбере, подразделение SberWorks. Я разрабатываю Giga IDE — новую IDE на основе IntelliJ IDEA. В ходе работы столкнулся с тем, что при открытии проектов происходит сканирование всех папок для поиска тех или иных файлов. Если обобщить, то задача сводится к обходу дерева. Я решил подробнее рассмотреть эту тему, причём с прицелом на многопоточность. Задача обхода деревьев далеко не нова, существуют два основных подхода: обход в ширину и глубину. В первом случае удобно применять рекурсивный алгоритм, а во втором — понадобится дополнительная коллекция, в которую будут складываться узлы дерева, но всё это в один поток, а я решил рассмотреть эту задачу в многопоточной интерпретации.

https://habr.com/ru/companies/sberbank/articles/921528/

#java #обход_дерева #multithreading #forkjoinpool #forkjointask #performance #производительность

Как обобрать дерево в несколько потоков?

Всем привет, меня зовут Антон, я Java‑разработчик в Сбере, подразделение SberWorks. Я разрабатываю Giga IDE — новую IDE на основе IntelliJ IDEA. В ходе работы столкнулся...

Хабр

Польза создания однородных задач для параллельного вычисления

Как правильно использовать возможности параллельного программирования? Зачем программистам математика и зачем знать алгоритмы? На примере небольшой задачи мы вместе ответим на эти вопросы. А так же хочу наглядно продемонстрировать преимущества создания однородных задач. Весь код из статьи находится здесь .

https://habr.com/ru/articles/779188/

#математика #алгоритмы #forkjoinpool #forkjoin #forkjointask #java

Польза создания однородных задач для параллельного вычисления

Как правильно использовать возможности параллельного программирования? Зачем программистам математика и зачем знать алгоритмы? Представьте что у вас есть 10 задач. Каждая пронумерована от 1 до 10, а...

Хабр