title: how flatmapdelayerror works in web flux
body: <p>Just want to understand flatMapDelayError will block the entire thread to complete the execution or will it proceed without blocking, All i want the below two calls goes parallelly and want to zip the result at the end.</p>
  <pre><code>Flux&lt;EmpAddressDetail&gt; empAddDetail =  getTimeoutDuration()
              .flatMapDelayError(duration -&gt; timeoutWrappedEmpDetailFlux(Service.getemeEmpAddress(empno),
                      duration, Exception.ErrorCode.TIMED_OUT), CONCURRENCY, PREFETCH);
  
  Flux&lt;Employee&gt; empInfo= getTimeoutDuration()
          .flatMap(duration -&gt; mapEmpTypes(empTypes)
                  .map(empTypedata -&gt; Tuples.of(duration, empTypedata)))
          .flatMapDelayError(durationEmpTuple -&gt; getEmpdetails(empno, durationBusinessTuple.getT1(), durationEmpTuple.getT2())
                  .filter(empdetails -&gt; requestTypes.contains(empdetails.getType()))
                  .doOnNext(empdetails -&gt; empdetails.setEmpId(empno)), CONCURRENCY, PREFETCH);
  
  return Flux.zip( empInfo, empAddDetail ).map(tuple -&gt; {
      Employee emp = tuple.getT1();
      emp.setAddressDetail(tuple.getT2());
      return emp;
  });
  </code></pre>