![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
内存优化
文章平均质量分 92
ChampionDragon
本人从事安卓开发
展开
-
安卓AsyncTask详解
一.AsyncTask实现的原理,和适用的优缺点 AsyncTask,是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以通过接口实现UI进度更新),最后反馈执行的结果给UI主线程. 使用的优点: 简单,快捷 过程可控 使用的缺点: 在使用多个异步操作和并需要进行Ui变更时,就变得复杂起来. ...原创 2017-11-28 09:10:38 · 635 阅读 · 0 评论 -
AsyncTask补充
http://www.cnblogs.com/devinzhang/archive/2012/02/13/2350070.html AsyncTask介绍 Android的AsyncTask比Handler更轻量级一些,适用于简单的异步处理。 首先明确Android之所以有Handler和AsyncTask,都是为了不阻塞主线程(UI线程),且UI的更新只能在主线程中完成,因此异步处理是不可...原创 2018-09-25 10:34:18 · 294 阅读 · 0 评论 -
View的复用:viewHolder
我们在开发的过程中用到ListView。 一、复用convertView首先讲下ListView的原理:ListView中的每一个Item显示都需要Adapter调用一次getView的方法,这个方法会传入一个convertView的参数,返回的View就是这个Item显示的View。如果当Item的数量足够大,再为每一个Item都创建一个View对象,必将占用很多内存,创建View对象(...原创 2017-11-30 09:32:15 · 839 阅读 · 0 评论 -
JAVA线程池
一.为什么要用线程池 1.减少了创建和销毁线程的次数,每个工作线程都可以被重复利用,可执行多个任务。 2.可以根据系统的承受能力,调整线程池中工作线线程的数目,防止因为消耗过多的内存,而把服务器累趴下(每个线程需要大约1MB内存,线程开的越多,消耗的内存也就越大,最后死机)。 Java里面线程池的顶级接口是Executor,但是严格意义上讲Executor并不是一个线程池,而只是一个执行线程...原创 2017-12-02 17:00:15 · 432 阅读 · 0 评论 -
安卓LruCache
我们都知道安卓系统对内存的消耗的条件是相当苛刻的,一般安卓系统规定每个APP占用的内存不能超过整个系统RunningMemory的1/8之一不然系统会OOM并杀死程序,那么对于每个APP在使用内存时就要谨慎再谨慎。这篇文章主要讲的就缓存工具类-----LruCache。 一.LruCache详解 LruCache 是 Android 的一个内部类,提供了基于内存实现的缓存 LRU 的工作原理...原创 2017-11-29 09:27:00 · 545 阅读 · 0 评论