Como usar fluxos paralelos em java

Streams em Java vêm em dois sabores básicos: sequencial

e paralelo. Os elementos de um fluxo sequencial são produzidos pela corrente método e criar fluxos que são processados ​​um elemento após a próxima. fluxos paralelos, em contraste, podem tirar proveito de processadores múltiplos núcleos, quebrando os seus elementos em dois ou mais fluxos mais pequenos, executando operações sobre eles, e, em seguida, recombinar os fluxos separados para criar a corrente de resultado final.

Cada um dos fluxos intermédios pode ser processado por um segmento separado, o que pode melhorar o desempenho de grandes correntes.

Por padrão, os fluxos são seqüenciais. Mas a criação de um fluxo paralelo é fácil: Basta usar o parallelStream método em vez da corrente método no início da tubagem.

Video: Programar em Java - IF ELSE pt.1 - Aula 18

Por exemplo, para imprimir todos os feitiços da HP usando um fluxo paralelo, use este código:

(S -gt; System.out.printlnl (s)) spells.parallelStream () forEach. -


Observe que quando você usar um fluxo paralelo, não é possível prever a ordem em que cada elemento do fluxo é processado. Isso porque quando o fluxo é dividido e executado em duas ou mais linhas, a ordem em que o processador executa os fios não é previsível.

Video: [Curso] Aprende Java facil en NetBeans Desde Cero - Parte #1 [Primer Programa]

Para demonstrar este ponto, considere este exemplo simples:

System.out.println ("Primeiro fluxo paralelo: ") -spells.parallelStream (.) ForEach (s -gt; System.out.printlnl (s)) - System.out.printlnl ("Nsecond fluxo paralelo: "(.) ForEach (s -gt; System.out.printlnl (s)) -spells.parallelStream) -

Ao executar este código, os resultados será algo parecido com isto:

Video: Java - Aproveitando o processo paralelo com Threads

Primeiro fluxo paralelo: FideliusFinite IncatatumEngorgioLocomotor MortisApareciumAvisSecond fluxo paralelo: FideliusEngorgioFinite IncatatumLocomotor MortisAvisAparecium

Note que, embora os mesmos períodos são impressos para cada uma das correntes, que são impressas numa ordem diferente.


Publicações relacionadas