Junior — Middle
Czy masz doświadczenie w korzystaniu z równoległych strumieni Stream do przetwarzania danych?
sobes.tech AI
Odpowiedź od AI
Tak, w Java można używać równoległych strumieni Stream, aby przyspieszyć przetwarzanie dużych ilości danych. W tym celu wywołuje się metodę parallel() na strumieniu, która przełącza go w tryb równoległy.
Przykład użycia:
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6);
int sum = numbers.parallelStream()
.filter(n -> n % 2 == 0)
.mapToInt(Integer::intValue)
.sum();
Równoległe strumienie automatycznie dzielą dane na części i przetwarzają je w wielu wątkach, co może zwiększyć wydajność na systemach wielordzeniowych. Jednak należy pamiętać, że nie wszystkie operacje dobrze się paralelizują, a koszty synchronizacji i łączenia wyników mogą być znaczne.