Parallel message unmarshalling from a token delimited input stream with Java8 stream API
<p>Is it possible with Java8 stream API to create interface like <code>Message pullNext()</code> plumbed on top of a delimited input stream with the logical steps as below?</p>

<ol>
<li>Delimited tokens are read from the character input stream</li>
<li>Tokens fed to parallel unmarshaller (one token -> one Message)</li>
<li>Messages are reordered back to retain the original incoming order</li>
<li>Messages are pullable with aforementioned <code>pullNext()</code></li>
</ol>

<p>Somewhat a disruptor with unmarshal stage served by concurrent pool. Similar to this, maybe (implementation of <code>stash</code> on top of InputStream is the one to sort out):</p>

<pre><code>Iterable&lt;String&gt; stash = Iterables.cycle("one", "two", "three");
Iterator&lt;String&gt; sink = StreamSupport.stream(stash.spliterator(), true).
        .parallel().map((x)-&gt;x+"-unmarshalled").iterator();
while (sink.hasNext()) process(sink.next()); // do something with decoded message
</code></pre>