I think these calls need to be moved into the `dispatch_async()` block as well.  Otherwise, you could get into a race condition where the request was released before the delegate was able to process it.