Sobes.tech
Junior — Middle

Como é implementado o processamento paralelo de dados em Java usando o método parallelStream?

sobes.tech IA

Resposta da IA

No Java, o método parallelStream() permite realizar operações em coleções em paralelo, usando múltiplos threads de um pool compartilhado ForkJoinPool. Isto acelera o processamento de grandes volumes de dados através da paralelização de tarefas.

Exemplo de uso:

import java.util.Arrays;
import java.util.List;

public class ParallelStreamExample {
    public static void main(String[] args) {
        List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);

        int sumOfSquares = numbers.parallelStream()
            .mapToInt(n -> n * n)
            .sum();

        System.out.println("Soma dos quadrados: " + sumOfSquares);
    }
}

Neste exemplo, o cálculo dos quadrados dos números e a sua soma ocorrem em paralelo, o que pode aumentar o desempenho em processadores multinúcleo. É importante garantir que as operações sejam sem efeitos colaterais para evitar problemas de segurança com os threads.