缓存机制

来源:互联网 发布:魅族微信无法连接网络 编辑:程序博客网 时间:2024/05/16 18:59
//  RootViewController.h


//  cacheDemo


//  (内存缓存demo-声明)


//  Created by iMilo TEANA on 12-2-1.


//  Copyright (c) 2012年 TEANA. All rights reserved.


//


 


#import <UIKit/UIKit.h>


 


@interface RootViewController : UIViewController


<NSURLConnectionDelegate>


 


- (IBAction)cachePress:(UIButton *)button;


 


@end


 


//


引入:

    IOS应用程序开发中,为了减少与服务端的交互次数,加快用户的响应速度,一般都会在IOS设备中加一个缓存的机制。下面将介绍如何在IOS设备中进行缓存。

目的:

    使用缓存的目的是为了使用的应用程序能更快速的响应用户输入,是程序高效的运行。有时候我们需要将远程web服务器获取的数据缓存起来,减少对同一个url多次请求。

解读:

    内存缓存我们可以使用sdk中的NSURLCache类。NSURLRequest需要一个缓存参数来说明它请求的url何如缓存数据的,我们先看下它的CachePolicy类型。

 

1NSURLRequestUseProtocolCachePolicy NSURLRequest默认的cache policy,使用Protocol协议定义。

2NSURLRequestReloadIgnoringCacheData 忽略缓存直接从原始地址下载。

3NSURLRequestReturnCacheDataElseLoad 只有在cache中不存在data时才从原始地址下载。

4NSURLRequestReturnCacheDataDontLoad 只使用cache数据,如果不存在cache,请求失败;用于没有建立网络连接离线模式;

5NSURLRequestReloadIgnoringLocalAndRemoteCacheData:忽略本地和远程的缓存数据,直接从原始地址下载,与NSURLRequestReloadIgnoringCacheData类似。

6NSURLRequestReloadRevalidatingCacheData:验证本地数据与远程数据是否相同,如果不同则下载远程数据,否则使用本地数据。

 

NSURLCache还提供了很多方法,来方便我们实现应用程序的缓存机制。


0 0
原创粉丝点击