title: Why my DispatchGroup's wait always timeout?
body: <p>I have this code:</p>
  
  <pre><code>let goAheadAction = UIAlertAction(title: "Go Ahead", style: .default) { _ in
      let dispatchGroup = DispatchGroup()
      dispatchGroup.enter()
  
      Server.POSTRequest(accessPoint: "/UserServices/forgotPassword", params:["emailAddress" : self.emailAddressTextField.text!], handler: {
              (data: Data?, response: URLResponse?, error: Error?) -&gt; Void in
          // TODO: Only considered successful case
          /*let confirmAlertController = UIAlertController(title: "Email been sent", message: "Please check your mailbox", preferredStyle: UIAlertControllerStyle.alert)
  
          self.present(confirmAlertController, animated: true, completion: nil)*/
  
          dispatchGroup.leave()
      })
  
      let waitResult = dispatchGroup.wait(timeout: DispatchTime(uptimeNanoseconds: 10000000000))
  
      if waitResult == .success {
          let emailSentAlertController = UIAlertController(title: "Email Sent", message: "We've sent an password reset link to \"\(self.emailAddressTextField.text!)\"", preferredStyle: UIAlertControllerStyle.alert)
  
          let gotItAction = UIAlertAction(title: "Got it", style: UIAlertActionStyle.cancel, handler: nil)
  
          emailSentAlertController.addAction(gotItAction)
          self.present(emailSentAlertController, animated: true, completion: nil)
      } else {
          let timeOutAlertController = UIAlertController(title: "Time Out", message: "Failed to request service, reason: \"Time Out\"", preferredStyle: UIAlertControllerStyle.alert)
  
          let gotItAction = UIAlertAction(title: "Got it", style: UIAlertActionStyle.cancel, handler: nil)
  
          timeOutAlertController.addAction(gotItAction)
          self.present(timeOutAlertController, animated: true, completion: nil)
      }
  }
  </code></pre>
  
  <p>Every time I let dispatchGroup to wait, it always return timeout. What's wrong? I set it to 10000000000 nano sec, which should be 10 sec right? And my request did certainly get back before 10 seconds.</p>