理论分析
lxn_李小牛
Where you spend your time on,The Time will let you become what kind of person
展开
-
Android中的进程优先级
一.概述首先解释一下什么是进程: 进程是一个具有独立功能的程序关于某个数据集合的一次运行活动,是系统进行资源分配和调度的基本单位,进程包含多个线程在运行。在Android中,默认情况下,同一个应用程序内的所有组件都是运行在同一个进程中的,大部分应用程序也不会去改变它。不过,如果需要指定某个特定组件所属的进程,则可以利用manifest 文件来达到目的。manifest文件中的每种组件元素——、 、原创 2016-01-20 13:50:23 · 802 阅读 · 0 评论 -
Android运行环境Dalvik和ART的比较
Android4.4采用ART取代Dalvik,简单理解就是Android程序运行的根本机制改变了,程序会启动地更快,而且会更省资源。表现在用户体验上,就是Android更流畅了,同时续航能力显著增加。 Dalvik:应用程序在每次运行的时候,字节码都要通过及时编译器编译成机器码,这样会拖慢应用的运行效率。 ART:应用在第一次安装的时候,字节码就会预先编译成机器码,使其成为真正的本地应用,应用原创 2016-01-19 16:52:40 · 2996 阅读 · 0 评论 -
Android中notifyDataSetInvalidated()和notifyDataSetChanged()
首先看一下notifyDataSetChanged与notifyDataSetInvalidated的区别: 我们打开官方的源码: /** * Notifies the attached observers that the underlying data has been changed * and any View reflecting the data set shoul原创 2016-01-26 16:59:17 · 5007 阅读 · 0 评论 -
AsyncTask版本的差异
今天我们来说说AsyncTask版本之间的差异,我们现在使用AsyncTask通常会使用如下方式: class DownloadTask extends AsyncTask<Void,Integer,String>{ @Override protected String doInBackground(Void... params) { retu原创 2016-03-01 12:21:18 · 1366 阅读 · 0 评论 -
Thread和Service的区别以及适用场景
今天来讲讲Thread和Service的区别?面试可能会问到的,先来看看服务的生命周期图: 我们为什么要用 Service 呢?其实这跟 android 的系统机制有关,我们先拿 Thread 来说。Thread 的运行是独立于 Activity 的,也就是说当一个 Activity 被 finish 之后,如果你没有主动停止 Thread 或者 Thread 里的 run 方法没有执行完毕的话,原创 2016-02-26 10:51:35 · 781 阅读 · 0 评论 -
AtomicInteger介绍
一.概述AtomicInteger是JDK1.5提供的一个支持原子操作的 Integer 类,就是保证对AtomicInteger类型变量的增加和减少操作是原子性的,不会出现多个线程下的数据不一致问题。如果不使用 AtomicInteger,要实现一个按顺序获取的 ID,就必须在每次获取时进行加锁操作,以避免出现并发时获取到同样的 ID 的现象。在Java语言中,++i和i++操作并不是线程安全的,原创 2016-02-17 12:34:42 · 858 阅读 · 0 评论 -
如何正确的获得一个view的宽和高
一.概述首先我们自定义一个控件,非常简单:public class MyView extends View{ public MyView(Context context, AttributeSet attrs) { super(context, attrs); } @Override protected void onMeasure(int width原创 2016-02-15 14:34:16 · 1157 阅读 · 0 评论