有时候一次 http 请求的处理时间过长,而其中一部分代码又是不必同步执行的。我们就可以用以下函数把任务抛出去异步执行,同时接口立即返回。 这个函数具体的执行过程是: 1. 调用时复制当前请求上下文 (request...
分类:
其他好文 时间:
2015-05-22 11:47:23
阅读次数:
1819
在Android中实现异步任务机制有两种方式,Handler和AsyncTask。Handler模式须要为每个任务创建一个新的线程,任务完毕后通过Handler实例向UI线程发送消息,完毕界面的更新,这样的方式对于整个过程的控制比較精细,但也是有缺点的,比如代码相对臃肿,在多个任务同一时候运行时,不...
分类:
移动开发 时间:
2015-05-20 21:49:34
阅读次数:
265
/** * 异步任务的三个泛型参数: * 1、调用execute方法时传入的参数类型,输入参数 * 2、progressUpdate的方法入参 * 3、异步任务的返回结果类型 doInBackground的返回类型,doPostExecute的方法入参 * * 使用异步任务的一些注意事项 * 1、一...
分类:
移动开发 时间:
2015-05-16 00:04:15
阅读次数:
169
介绍new Thread的弊端及Java四种线程池的使用,对Android同样适用。本文是基础篇,后面会分享下线程池一些高级功能。 1、new Thread的弊端 执行一个异步任务你还只是如下new Thread吗? new Thread(new Runnable(...
分类:
移动开发 时间:
2015-05-15 18:10:52
阅读次数:
130
起因最近打算实现异步任务,回想起当年看celery的场景,重新整理下celery的机制1. 任务入队列假定一个函数定义如下def add(a, b, c=0):
print a + b + c任务被序列化后,以字符串的形式入队列{"body": "gAJ9cQEoVQdleHBpcmVzcQJOVQN1dGNxA4lVBGFyZ3NxBF1xBShLD0sUZVUFY2hvcmRxBk5V...
分类:
其他好文 时间:
2015-05-14 14:19:07
阅读次数:
130
异步任务一般用在加载一些网络资源的时候用,主要的实现方法是新建一个类来继承AsyncTask这个父类,然后复写该类下面的一些方法,其中doInBackground方法是必须要的,下面看代码package com.example.test;import android.os.AsyncTask;imp...
分类:
移动开发 时间:
2015-05-12 12:56:10
阅读次数:
216
一、block (一)简介 block 是什么?苹果推荐的类型,效率高,在运行中保存代码。用来封装和保存代码,有点像函数,block 可以在任何时候执行。在多线程、异步任务、集合遍历、集合排序、动画转场用的很多。 block和函数的相似性:(1)可以保存代码(2)有返回值(3)有形参(4)调用方.....
分类:
其他好文 时间:
2015-05-11 17:29:59
阅读次数:
122
IntentService简介:
IntentService是一个通过Context.startService(Intent)启动可以处理异步请求的Service,使用时你只需要继承IntentService和重写其中的onHandleIntent(Intent)方法接收一个Intent对象,该服务会在异步任务完成时自动停止服务.
所有的请求的处理都在IntentService内部工作线程中...
分类:
移动开发 时间:
2015-05-04 22:10:06
阅读次数:
157
目录结构如下:Http协议的封装:使用http协议有request和response这两个主要的域,下边是Http协议封装的结构图
(1)HttpRequestInter.java:作为request域对象,应该可以获得客户端请求的地址和httpRequest对象,这样的话才可以获得客户端请求的参数等信息;另外public HttpResponseInter request() throws Ex...
分类:
移动开发 时间:
2015-05-03 17:32:36
阅读次数:
243
在Android中实现异步任务机制有两种方式,Handler和AsyncTask。Handler模式需要为每一个任务创建一个新的线程,任务完成后通过Handler实例向UI线程发送消息,完成界面的更新,这种方式对于整个过程的控制比较精细,但也是有缺点的,例如代码相对臃肿,在多个任务同时执行时,不易对...
分类:
移动开发 时间:
2015-05-03 07:04:00
阅读次数:
125