title: DISPATCH_TIME_NOW in swift 3 and Backward compatibility
body: <p>In accordance with <a href="https://stackoverflow.com/a/24318861/5654848">this</a> brilliant answer on the usage of <code>dispatch_after</code> by @matt, I tried the code on the playground and it works fine (no errors). But when I try to do a backward compatibility as <code>DispatchTime.now()</code> is available only for <code>iOS 10</code> only like so:</p>
  
  <pre><code>func delay( _ delay: Double, closure: () -&gt; ()){
      guard #available(iOS 10, *) else {
          dispatch_after(
              dispatch_time(
                  DISPATCH_TIME_NOW,
                  Int64(delay * Double(NSEC_PER_SEC))
              ),
              dispatch_get_main_queue(), closure)
          return
      }
      let when = DispatchTime.now() + delay
      DispatchQueue.main.after(when: when, execute: closure)
  }
  </code></pre>
  
  <p>The compiler offers to fix the <code>DISPATCH_TIME_NOW</code> to <code>Replace "DISPATCH_TIME_NOW" with "dispatch_time_t(DISPATCH_TIME_NOW)"</code> and throws an error saying </p>
  
  <blockquote>
    <p>Cannot convert value of type 'Int' to expected argument type 'dispatch_time_t' (aka 'UInt64') </p>
  </blockquote>
  
  <p>I tried fixing it as the compiler offers but finally ended up with more errors. How should I use the backward compatibility here? What wrong I'm I doing? Do help, thanks! </p>