- Splits the source of the data into multiple parts
- Process them parallelly.
- Combine the result.
IntStream.rangeClosed(1, 1000) .sum()
IntStream.rangeClosed(1, 1000) .parallel() .sum()
- Parallel Streams use the Fork/Join framework that got introduced in Java 7
- Number of threads created == number of processors available in the machine