public <U> FutureStream<U> generateAsync(final Supplier<U> s) {
        return this.constructFutures(ReactiveSeq.generate(() -> 1)
                                                .map(n -> CompletableFuture.supplyAsync(s, getExecutor())));

    }
public < U > FutureStream < U > generateAsync ( final Supplier < U > s ) { return this . constructFutures ( ReactiveSeq . generate ( ( ) -> 1 ) . map ( n -> CompletableFuture . supplyAsync ( s , getExecutor ( ) ) ) ) ; }
Generate an infinite FutureStream executing the provided Supplier continually and asynhcronously

<pre>
{@code
new LazyReact().generate(this::load)
.limit(5)
.reduce(SemigroupK.stringConcat);

Optional["data1data2data3data4data5"]

}</pre>
@param s Supplier to execute asynchronously to create an infinite Stream
@return Infinite FutureStream