title: Difference between java 8 streams and parallel streams
body: <p>I wrote code using Java 8 streams and parallel streams for the same functionality with a custom collector to perform an aggregation function.
  When I see CPU usage using <code>htop</code>, it shows all CPU cores being used for both 'streams' and 'parallel streams' version. So, it seems when <code>list.stream()</code> is used, it also uses all CPUs. Here, what is the precise difference between <code>parallelStream()</code> and <code>stream()</code> in terms of <strong>usage of multi-core</strong>.</p>