title: Why do Cocoa games avoid Grand Central Dispatch for creating a timer?
body: <p>I'm looked a far deal around the internet discussing creating game loops in Cocoa. Most of the game loops I've seen use NSTimer to trigger an event every 60th of a second. Why does there appear to be no examples that use Grand Central Dispatch, like in the source code from Apple's Developers Documentation below. Is there a problem that I don't know about?</p>
  
  <pre><code>dispatch_source_t CreateDispatchTimer(uint64_t interval,
                uint64_t leeway,
                dispatch_queue_t queue,
                dispatch_block_t block)
  {
     dispatch_source_t timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER,
                                                       0, 0, queue);
     if (timer)
     {
        dispatch_source_set_timer(timer, dispatch_walltime(NULL, 0), interval, leeway);
        dispatch_source_set_event_handler(timer, block);
        dispatch_resume(timer);
     }
     return timer;
  }
  </code></pre>