Looking for java Keywords? Try Ask4Keywords

Java Language Параллельный поток


пример

Примечание. Перед тем, как решить, какой Stream использовать, пожалуйста, взгляните на поведение ParallelStream vs Sequential Stream .

Если вы хотите одновременно выполнять операции Stream , вы можете использовать любой из этих способов.

List<String> data = Arrays.asList("One", "Two", "Three", "Four", "Five");
Stream<String> aParallelStream = data.stream().parallel();

Или же:

Stream<String> aParallelStream = data.parallelStream();

Чтобы выполнить операции, определенные для параллельного потока, вызовите оператор терминала:

aParallelStream.forEach(System.out::println);

(Возможен) выход из параллельного Stream :

Три
четыре
Один
Два
5

Порядок может измениться, поскольку все элементы обрабатываются параллельно (что может ускорить выполнение). При заказе используйте параметр parallelStream .

Эффективное воздействие

В случае задействования сети параллельный Stream s может ухудшить общую производительность приложения, поскольку все параллельные Stream используют общий пул потоков fork-join для сети.

С другой стороны, параллельный Stream s может значительно повысить производительность во многих других случаях, в зависимости от количества доступных ядер в текущем CPU на данный момент.