在前面博客中,介绍了nsurlrequest请求类的相关使用方法,其中有介绍关于请求返回数据的缓存策略,实际上,ios中具体缓存操作的管理是由nsurlcache类来实现的。nsurlrequest类介绍的博客地址如下:
<a href="http://my.oschina.net/u/2340880/blog/624957#">?</a>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<code>//获取当前应用的缓存管理对象</code>
<code>+ (nsurlcache *)sharedurlcache;</code>
<code>//设置自定义的nsurlcache作为应用缓存管理对象</code>
<code>+ (</code><code>void</code><code>)setsharedurlcache:(nsurlcache *)cache;</code>
<code>//初始化一个应用缓存对象</code>
<code>/*</code>
<code>memorycapacity 设置内存缓存容量</code>
<code>diskcapacity 设置磁盘缓存容量</code>
<code>path 磁盘缓存路径</code>
<code>内容缓存会在应用程序退出后 清空 磁盘缓存不会</code>
<code>*/</code>
<code>- (instancetype)initwithmemorycapacity:(nsuinteger)memorycapacity diskcapacity:(nsuinteger)diskcapacity diskpath:(nullable nsstring *)path;</code>
<code>//获取某一请求的缓存</code>
<code>- (nullable nscachedurlresponse *)cachedresponseforrequest:(nsurlrequest *)request;</code>
<code>//给请求设置指定的缓存</code>
<code>- (</code><code>void</code><code>)storecachedresponse:(nscachedurlresponse *)cachedresponse forrequest:(nsurlrequest *)request;</code>
<code>//移除某个请求的缓存</code>
<code>- (</code><code>void</code><code>)removecachedresponseforrequest:(nsurlrequest *)request;</code>
<code>//移除所有缓存数据</code>
<code>- (</code><code>void</code><code>)removeallcachedresponses;</code>
<code>//移除某个时间起的缓存设置</code>
<code>- (</code><code>void</code><code>)removecachedresponsessincedate:(nsdate *)date ns_available(10_10, 8_0);</code>
<code>//内存缓存容量大小</code>
<code>@property nsuinteger memorycapacity;</code>
<code>//磁盘缓存容量大小</code>
<code>@property nsuinteger diskcapacity;</code>
<code>//当前已用内存容量</code>
<code>@property (readonly) nsuinteger currentmemoryusage;</code>
<code>//当前已用磁盘容量</code>
<code>@property (readonly) nsuinteger currentdiskusage;</code>
<code></code>