title: Lag between viewWillAppear and viewDidAppear
body: <p>I have a strange issue using presentViewController as part of a library.</p>
  
  <p>The code that is using the library calls this method. It takes up to 12 seconds from calling presentViewController to running the completion block. But not all the time normally it's almost instantaneous. </p>
  
  <p>However if I touch any where on the screen while it is "lagging" it will fire instantly.</p>
  
  <pre><code>-(void) advancedMenuWithPresentingViewController
                      :(UIViewController *)presentingViewController
              animated:(BOOL)animated
               onClose:(void (^)(void))onClose
               onPrint:(void (^)(NSString *, NSString *))onPrint{
      AdvancedMenuViewController *amc = [[AdvancedMenuViewController alloc] init];
          AdvancedMenuViewController * __weak weakAmc = amc;
  
          [amc setOnClose:^(void)
           {
               [weakAmc dismissViewControllerAnimated:animated completion:^{
                   onClose();
               }];
           }];
          [amc setOnPrint:onPrint];
      //Time from here
      [presentingViewController presentViewController:amc
                                                 animated:animated
                                               completion:^{
                //To here
           }];
  }
  </code></pre>
  
  <p>viewDidLoad and viewWillAppear are called without any lag and then there is a long delay (unless you touch the screen) until viewDidAppear is called. </p>
  
  <p>There is nothing inside any of these methods that would slow it down. As it normally works fine.</p>
  
  <p>If any one could shed any light on this issue I would be most grateful, the most confusing part is that if you interact with the screen after firing advancedMenuWithPresentingViewController it will occur instantly.</p>