请求更多的后台时间

 1 - (void)applicationDidEnterBackgtound
 2 {
 3     UIApplication *app = [UIApplication sharedApplication];
 4     __block UIBackgroundTaskIdentifier taskId;
 5
 6     taskId = [app beginBackgroundTaskWithExpirationHandler:^{
 7         NSLog(@"%@",NSStringFromSelector(_cmd));
 8         [app endBackgroundTask:taskId];
 9     }];
10
11     if (taskId == UIBackgroundTaskInvalid) {
12         return;
13     }
14
15     dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
16         //做一些额外的操作
17         [app endBackgroundTask:taskId];
18     });
19 }
时间: 2024-10-15 19:06:24

请求更多的后台时间的相关文章

请求更多后台时间-陈棚

假如应用程序正在知心文件下载或者文件传输等,当应用进入后台时,如果该任务还没有执行王成,应用转入后提啊后,该任务就会被暂停.千万不要强制在applicationDidenterBackGround:方法中直接完成改任务--因为这回导致应用进入后台花费太多时间,iOS系统可能直接从内存中删除改应用.正确的做法是,以applicationDidEnterBackground:方法为瓶盖,告诉系统进入后台后还有更多的任务需要完成,从而向系统申请更多的后台时间.在这种方式下,当我们的应用处于后台时,即使

iOS申请持续的后台时间

iOS申请持续的后台时间 分类:IOS开发相关 (877)  (0) 由于苹果的后台机制,当我们按下home键的时候,所有线程包括主线程的任务都会被挂起,一些资源比如socket也会被系统回收,会导致很多问题,比如一个很重要的资源中断下载,或者定时器方法被暂停等等. 苹果在4.0以后提供了一种申请后台时间的机制: - (UIBackgroundTaskIdentifier)beginBackgroundTaskWithExpirationHandler:(void (^)(void))handl

解决AJAX请求使PHP反应时间过长的问题

现在我们开发了很多依赖于Ajax请求的应用,在某些情况下,甚至全部页面都依赖Ajax.有时我们会注意到,当一个网页发送两个或者更多Ajax请求时,PHP的反应时间会很长并会同时返回响应内容. 这个问题很可能是你处理PHP会话的方式造成的,跟着本文去理解这个问题,并做一些处理来避免这个问题. 内容 什么是PHP会话? 什么是Ajax? 具体问题 造成的原因 问题的解决方法 总结 什么是PHP会话? 为了理解这个问题,有必要先了解一下PHP会话和Ajax,以及它们是怎么干扰的. 假设你正在开发一个W

获取系统完成任务所需要的后台时间

有没有一种情况,当软件退出后,你还是需要运行一点东西,或者是需要很长时间来运行的一个代码.此时,就需要向后台申请时间了.但是官司方资料. 根据苹果文档中关于后台执行的描述,任何app都有10分钟左右的后台任务执行时间. 10分钟后,app会被iOS强行挂起. 但是,有5类app允许有“无限的”后台运行时间: 1.  Audio. 2.  Location/GPS. 3.  VoIP. 4.  Newsstand. 5.  Exernal Accessory . 你可以将任何app声明为上述5种类

javaScript(拼写树形)+ajax请求,去后台查找数据

第一步:页面加载完成时,利用jquery中的一函数,调用js方法,js方法,发送ajax请求,去后台查找父类权限集合,响应回来json格式的数据,对数据进行操作,往页面上添加内容 1 //页面初始化加载菜单内容 2 $(document).ready(function(){ 3 loadPower(0); 4 }); 5 6 //加载一级权限菜单 7 function loadPower(pId){ 8 $.ax({ 9 type: "get", 10 url: "<%

POI导出Excel不弹出保存提示_通过ajax异步请求(post)到后台通过POI导出Excel

实现导出excel的思路是:前端通过ajax的post请求,到后台处理数据,然后把流文件响应到客户端,供客户端下载 文件下载方法如下: public static boolean downloadLocal(HttpServletRequest request,String filePath, String fileName, HttpServletResponse response) throws Exception { // 读到流中 InputStream inStream = new F

ASP.NET easyUI--datagrid 通过ajax请求ASP.NET后台数据的分页查询

js前台对datagrid的定义代码,如下 mygrid = $('#mytable').datagrid({ fit: true, //自动大小 height: 'auto', rownumbers: true, //行号 fitColumns: true, collapsible: true, //是否可折叠的 loadMsg: '数据装载中......', singleSelect: true, //单行选取 pagination: true //显示分页 // columns: [[]]

Postman发送请求,及后台接收

一.前言 在使用postman工具测试api接口的时候,如何使用 json 字符串传值呢,而不是使用 x-www-form-urlencoded 类型,毕竟通过 key-value 传值是有局限性的.假如我要测试批量插入数据的接口呢,使用 x-www-form-urlencoded 方法根本就不适用于这种场景. 那么如何通过postman工具使用json字符串传值呢,这里就引申出来了spring的两个注解: @RequestParam @RequestBody 总而言之,这两个注解都可以在后台接

js接收后台时间数据变成秒处理为正常格式

在做项目时,后台数据json传到前台ajax,数据中包含DateTime格式的数据,前台js操作时间数据的时候却发现日期变成了秒格式 js能对日期操作的那些方法均不能使用了,例如getDay()等等,但是此时需要对这个进行操作,试了很多方法,最后发现了一种方法 去处多余的内容,留下秒,转为int格式 var time=data.Data[1].Date.replace(/\D\img,""); time=new Date(parseInt(time)); 输出的结果就正常了. 从上图可