2 qq 27561705 qq_27561705 于 2016.01.26 11:20 提问

我并不能确认图片到底是从缓存取出还是重新请求加载

我的软件中有一个类似于发说说的功能,我一直用的是SDWebImage加载图片,每次进入页面都会刷新(重新请求),由于用了SDWebImage,所以并没有做分线程处理,令我疑惑的是,我并不能确认图片到底是从缓存取出还是重新请求加载,如果是缓存,那每次请求的数据还有没有意义,该怎么处理,如果每次都是重新加载,该怎么优化,目前有卡顿现象,不明显

2个回答

wepapapa
wepapapa   2016.01.26 11:42
已采纳

使用SDWebImage加载图片是会做缓存的,不需要每次进入页面都自动刷新,可以在该页面增加一个刷新手势,需要查看最新数据刷新的时候做刷新动作.

XYChinaChengdu
XYChinaChengdu   2016.02.22 11:05

SDWebImage会自动缓存图片,不需要你手写从本地获取,会自动完成。之所以要请求接口是因为要判断当前图片本地是否存在,通常在本地保存的文件名就是图片的URL,SDWebImage会自动比对当前图片本地是否存在,存在就直接取,而不会在加载网络获取。整个流程大概就是这样。至于卡顿现象可能有很多原因,这里我提几个吧。1.图片太大 2.代码执行率太高 3.代码优化不到位。。。。。能力有限。只能提供这些帮助了

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
系统按钮返回,一般都从缓存里直接取,现在想让他返回时重新加载
在head里面加这个meta            另外如果页面里面有表单   在表单数据上加  autocompete=“off”  例: First name: Last name: E-mail: 请填写并提交此表单,然后重载页面,来查看自动完成功能是如何工作的。 请注意,表单的自动完成功能是打开的,而 e-mail 域是关闭的
Glide图片缓存问题,同一url换图片不起作用问题
Glide的引入网上很多,更换图片时候调用资源id时候多更改名字才可以实现,网络请求时候用一个固定url请求也不加载直接读取缓存,导致后台换图片,手机不起作用。 网上说完全起线程清除缓存,或者 设置跳过内存缓存 Glide.with(this).load(imageUrl).skipMemoryCache(true).into(imageView); 但是都不起作用,
浏览器前进、后退键时刷新页面而不读取缓存,重新刷新页面
点击浏览器的后退键,总是会读取缓存,这样会导致有时候获取不到页面上的值,如果点击后退键时刷新页面而不读取缓存,这样就不会产生获取不到值的问题。 jsp页面和servlet页面均可以设置。 response.setHeader("Cache-Control","no-cache"); response.setHeader("Pragma","no-cache"); response.setD
Glide加载相同URL时由于缓存无法更新图片的问题
在使用Glide加载图片时,如果设置了缓存,那么无论图片是否有了更新,只要URL不变,那么就会使用内存缓存或者磁盘缓存的图片,导致加载出来的图片没有更新的问题,因此有两种解决方法: 如果是本地图片,可以采取取消缓存的方式,这样是比较简单的操作:Glide.load(url) .skipMemoryCache(true) // 不使用内存缓存 .diskCacheStrategy(Disk
图片img的src不变让浏览器重新加载实现方法
图片img的src不变,想让浏览器重新加载怎么办,在图片地址src不变的情况下让浏览器重新加载图片,实际上在src不变时,浏览器直接就去读取缓存 avascript给这个img标签的src属性后面拼接一个 ? 和 javascript对象new Date().getTime()毫秒值做成queryString的样子,就能防止被缓存了 在图片地址src不变的情况下让浏览器重新加载
让sdwebimage不缓存图片,每次都重新加载url
在AppDelegate didFinishLaunching的地方追加如下代码 SDWebImageDownloader *imgDownloader = SDWebImageManager.sharedManager.imageDownloader; imgDownloader.headersFilter = ^NSDictionary *(NSURL *url, NSDictio
验证Glide图片异步缓存,再次打开程序优先从内存/磁盘中加载图片
关于图片的缓存,有多种实现方式:自己编写实现: AsyncTask+LruCache+SD卡缓存 AsyncTask他内部是维护了一个handler和线程池的。 ExecutorService +LruCache+SD卡 ExecutorService 线程池,可以自己指定需要几个线程任务。 Thread+lruCache+sdk 这种方式不建议用,Thread去下载图片,每次下载图片都要n
Picasso图片框架加载图片 使用及缓存问题
项目中用的Picasso 框架 ,加载图片。使用很方便 而且缓存机制非常强大。 正常使用我们可以这样直接调用,我把方法写到一个util里面了。 调用代码如下: PicassoUtil.displayImage(context, Constants.U_IMG_URL, R.drawable.default, iv_icon); Util工具类 import
透过浏览器看HTTP缓存
作为前端开发人员,对于我们的站点或应用的缓存机制我们能做的似乎不多,但这些却是与我们关注的性能息息相关的部分,站点没有做任何缓存机制,我们的页面可能会因为资源的下载和渲染变得很慢,但大家都知道去找前端去解决页面慢的问题而不会去找服务端的开发人员。因此,了解相关的缓存机制和充分的利用它似乎就变得必不可少。 web端的缓存机制其实有多种,我在这里只是学习和整理了以浏览器为载体的HTTP缓存机制,
怎么让浏览器重新加载修改过的JS文件,而不是沿用缓存里的?
 Ctrl+F5强制刷新