title: Failed to subscribe thenMany item
body: <p>When I use <code>Mono.thenMany</code>, the Flux data is lost, why?</p>
  
  <pre><code>@Test
  fun thenManyLostFluxDataTest() {
    Mono.empty&lt;Int&gt;()
      .thenMany&lt;Int&gt; { Flux.fromIterable(listOf(1, 2)) }
      .subscribe { println(it) } // why not output item 1, 2
  }
  </code></pre>
  
  <p>If I change to use <code>blockLast()</code> to do the subscribe, the test method run forever. So fearful:</p>
  
  <pre><code>@Test
  fun thenManyRunForeverTest() {
    Mono.empty&lt;Int&gt;()
      .thenMany&lt;Int&gt; { Flux.fromIterable(listOf(1, 2)) }
      .blockLast() // why run forever
  }
  </code></pre>
  
  <p>Now I use another way to do what the <code>thenMany</code> method should do:</p>
  
  <pre><code>// this method output item 1, 2
  @Test
  fun flatMapIterableTest() {
    Mono.empty&lt;Int&gt;()
      .then(Mono.just(listOf(1, 2)))
      .flatMapIterable { it.asIterable() }
      .subscribe { println(it) } // output item 1, 2 correctly
  }ed
  </code></pre>