Hi,

This patch implements optimizations for the limit/substream operations when 
input to those operations have certain properties (corresponding to known size 
or unordered) which helps to avoid out of memory issues (not all, we still have 
some more work to do).

The {Xxx}/Stream.generate methods have been modified to generate a known 
infinite stream of unordered elements. Previously an ordered known infinite 
stream of elements was generated, making it particularly prone to OOMEs. 

  http://cr.openjdk.java.net/~psandoz/tl/JDK-8012987-slice/webrev/

-

This is based on the following in order, still requiring reviews (hint hint):

 http://cr.openjdk.java.net/~psandoz/tl/JDK-8016308-Node/webrev/
 http://cr.openjdk.java.net/~psandoz/tl/JDK-8016324-pipelines/webrev/
 http://cr.openjdk.java.net/~psandoz/tl/JDK-8016455-stream-tests/webrev/

Plus:

 http://cr.openjdk.java.net/~henryjen/ccc/8009736.2/webrev/  (Note this is not 
rebased in this version, but is in my patch queue)

Paul.

Reply via email to