Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/117.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 在应用程序上调用NSURLConnection将终止_Ios_Iphone_Nsurlconnection_Terminate - Fatal编程技术网

Ios 在应用程序上调用NSURLConnection将终止

Ios 在应用程序上调用NSURLConnection将终止,ios,iphone,nsurlconnection,terminate,Ios,Iphone,Nsurlconnection,Terminate,我正试图通过applicationWillTerminate方法上的NSURLRequest通过NSURLConnection发送NSURLRequest,请求在客户端被调用,但没有到达我的服务器端 - (void)applicationWillTerminate:(UIApplication *)application { [self sendRandomRequestToServer]; } 我猜这是因为终止终止了进程 我说得对吗 如果是这样,我该如何解决这个问题 谢谢 更新- 我

我正试图通过
applicationWillTerminate
方法上的
NSURLRequest
通过
NSURLConnection
发送
NSURLRequest,请求在客户端被调用,但没有到达我的服务器端

- (void)applicationWillTerminate:(UIApplication *)application
{
    [self sendRandomRequestToServer];
}
我猜这是因为终止终止了进程

我说得对吗

如果是这样,我该如何解决这个问题

谢谢

更新-

我知道苹果给你的5秒钟,所以我做了实验-

我试图在主线程上运行无尽的
循环,它在
上继续运行2分钟将终止

我还在后台线程上使用
afterDelay
0.1和
willTerminate上的
dispatchAfter
0.1调用了一个方法,但这两个方法都没有被调用


因此,我不相信“5秒”规则

您不应该在后台从
应用程序willterminate运行代码

  • 清除主线程后,即使后台线程仍在工作,进程也会退出

  • applicationWillTerminate
    是在主线程上执行的最后一个代码块。这意味着(时间,主线程)
之后的
dispatch\u将不会被调用


您不应该在后台运行
应用程序将终止的代码

  • 清除主线程后,即使后台线程仍在工作,进程也会退出

  • applicationWillTerminate
    是在主线程上执行的最后一个代码块。这意味着(时间,主线程)
之后的
dispatch\u将不会被调用


谢谢,但这不是我的答案。我已经更新了我的答案。谢谢,但这不是我的答案。我已经更新了我的答案。你是否检查了
applicationWillTerminate
是否实际被调用?是的,我检查了,NSLog in applicationWillTerminate完成了它的工作。只有当你将UIApplicationExitsOnSuspend设置为true时,五秒钟规则才适用,这会导致当用户切换离开你的应用时立即终止。通常,只有当系统急需资源时,应用程序才会终止,因此您不想在此时阻止执行任何类型的工作。当应用程序移到后台时发出请求。是否检查是否实际调用了
applicationWillTerminate
?是的,NSLog in applicationWillTerminate完成了它的工作。只有将UIApplicationExitsOnSuspend设置为true时,五秒钟规则才适用,这会导致当用户离开应用程序时,应用程序立即终止。通常,只有当系统急需资源时,应用程序才会终止,因此您不想在此时阻止执行任何类型的工作。当应用程序移到后台时发出请求。