Ios 在Ipad上使用pushViewController的时间过长

Ios 在Ipad上使用pushViewController的时间过长,ios,objective-c,xcode,ipad,uinavigationcontroller,Ios,Objective C,Xcode,Ipad,Uinavigationcontroller,我有一个恼人的问题 我使用导航控制器切换视图控制器。 在我的iPhone上运行正常,但当我在iPad上测试时,推到第二视图控制器需要花费太多时间(3-4秒) 第一视图控制器 dispatch_async(dispatch_get_main_queue(), ^{ InGame *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"inGame"]; vc.multiplayer = false;

我有一个恼人的问题

我使用
导航控制器
切换
视图控制器
。 在我的
iPhone
上运行正常,但当我在
iPad
上测试时,推到第二视图控制器需要花费太多时间(3-4秒)

第一视图控制器

dispatch_async(dispatch_get_main_queue(), ^{
    InGame *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"inGame"];
    vc.multiplayer = false;
    vc.methodStart = [NSDate date];
    [self.navigationController pushViewController:vc animated:true]; });
在第二视图中,控制器
viewDidLoad
方法

NSDate *methodFinish2 = [NSDate date];
NSTimeInterval executionTime2 = [methodFinish2 timeIntervalSinceDate:self.methodStart];
NSLog(@"executionTime = %f", executionTime2);
如果它在第二视图中很重要,我有6个按钮、一些小图像和一个17行的表格。每行2个按钮和1个标签

请帮我一点忙

编辑

这是第一次

以下是带有线程的图像


它是每次都发生还是第一次发生?只是第一次,我忘了指定在连接调试器时发生了什么?调用
dispatch\u async(dispatch\u get\u main\u queue)
的事实表明,这比您告诉我们的要多得多。特别是,您可能正在后台线程上执行某些操作,或者您可能正在进行某种联网。我认为这就是额外花费时间的原因在任何情况下,你都可以通过使用仪器来确定发生了什么。@Gaby Fitcal:在调试模式下运行你的应用程序,在需要时间时在iPad上加载第二个VC暂停执行,您将看到主线程上的哪个操作正在阻止它:)让我们知道将告诉您修复它的解决方案:)它是每次都发生还是第一次发生?只有第一次,我忘了指定当您连接调试器时会发生什么?您正在调用
dispatch\u async(dispatch\u get\u main\u queue)
表明这方面的内容比您告诉我们的要多得多。特别是,您可能正在后台线程上执行某些操作,或者您可能正在进行某种联网。我认为这就是额外花费时间的原因在任何情况下,你都可以通过使用仪器来确定发生了什么。@Gaby Fitcal:在调试模式下运行你的应用程序,在iPad上加载第二个VC。当需要暂停执行时,你会看到主线程上的哪个动作阻止了它:)让我们知道,我们会告诉你解决方法:)