title: Need help syncing: WaitGroup
body: <p>I would like your help, here is a piece of code in which requests are emitted <a href="https://play.golang.org/p/1_FOY8BTZND" rel="nofollow noreferrer">https://play.golang.org/p/1_FOY8BTZND</a>,each request has its own delay 1 request is waiting for the second to complete, that is wg.Done(), return:</p>
  <pre><code>ID: 0, Name: Test #1, Sleep: 5ns
  ID: 1, Name: Test #2, Sleep: 1ns
  ID: 0, Name: Test #1, Sleep: 5ns
  ID: 1, Name: Test #2, Sleep: 1ns
  ID: 0, Name: Test #1, Sleep: 5ns
  ID: 1, Name: Test #2, Sleep: 1ns
  </code></pre>
  <p>How to make the first request not wait for the second, but execute linearly, waiting only for the completion of its group, return:</p>
  <pre><code>ID: 0, Name: Test #1, Sleep: 5ns
  ID: 1, Name: Test #2, Sleep: 1ns
  ID: 1, Name: Test #2, Sleep: 1ns
  ID: 1, Name: Test #2, Sleep: 1ns
  ID: 1, Name: Test #2, Sleep: 1ns
  ID: 1, Name: Test #2, Sleep: 1ns
  ID: 0, Name: Test #1, Sleep: 5ns
  ID: 1, Name: Test #2, Sleep: 1ns
  ID: 1, Name: Test #2, Sleep: 1ns
  ID: 1, Name: Test #2, Sleep: 1ns
  ID: 1, Name: Test #2, Sleep: 1ns
  ID: 1, Name: Test #2, Sleep: 1ns
  </code></pre>