您的位置:首页 > 其它

Volley使用说明与简单分析

2016-06-01 23:14 344 查看
Volley内部主要涉及有Request(请求),RequestQueue(请求队列),CacheDispatcher(缓存分发器,本质是缓存线程,一般只有一一条),NetworkDispather(网络分发器,本质是多线程),(背后采用线程池管理)。ResponseDelivery(Response分发器),NetWork(网络处理)。

一个Request从产生到消费的过程主要包含如下:

将通过RequestQueue的add(Requeue)将Requeue添加到RequeueQueue的mCurrentRequest(本质是Set),然后根据Request的shouldCache判断是否加入缓存队列(BolockingQueue mCacheQueue),然后判断是否含有这个缓存,或者缓存是否过期,或者缓存过期而希望刷新缓存,都会将 Request加入到网络队列(BolockingQueue mQueue),然后NetWorkDispatcher将Request派给NetWork处理,NetWork处理后返回数据,根据属性判断是否将结果加入缓存,然后将结果包装成自定义类返回,成功则回调Resopnse.Listener,失败则回调ErrorListener。

相反,则在缓存队列中寻找结果。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: