title: asyncAfter with no time seems delay - Swift
body: <p>Eventually I have used asyncAfter feature in swift with no time, and it does some delay and seems different with normal code.</p>
  
  <p>Code with async:</p>
  
  <pre><code>DispatchQueue.main.asyncAfter(deadline: .now() + 0.0 , execute: {
      self.updateUI()
  })
  </code></pre>
  
  <p>Normal code:</p>
  
  <pre><code>self.updateUI()
  </code></pre>
  
  <p>Similar problem with perform selector also.</p>
  
  <pre><code>self.performSelector("onFlip", withObject: nil, afterDelay: 0)
  </code></pre>
  
  <p>Is that delay is caused because of creating new thread?</p>