- 博客(7)
- 资源 (9)
- 收藏
- 关注
转载 Android 性能优化之使用MAT分析内存泄露问题
转载请注明本文出自xiaanming的博客(http://blog.csdn.net/xiaanming/article/details/42396507),请尊重他人的辛勤劳动成果,谢谢!我们平常在开发Android应用程序的时候,稍有不慎就有可能产生OOM,虽然JAVA有垃圾回收机,但也不能杜绝内存泄露,内存溢出等问题,随着科技的进步,移动设备的内存也越来越大了,但由于Android设备的参差不
2015-07-27 19:37:36 837
原创 原子性
CPU是按一个一个指令来执行的,每个指令的执行都是不可分割的,原子性的。为了使一些代码块也具有原子性,可以使用synchronized同步。JSL规范定义,类的构造必须是原子性的,非并发的,因此不需要加同步块。个人理解,只要 CPU 被分配给某个线程执行构造方法,则构造期间 CPU 不会切换到其他线程,而是把构造方法这条指令执行完。再进一步说,个人理解,CPU 总是将一条指令执行完才可能切换到其
2015-07-16 09:49:30 534
原创 Volatile
int a = 10;int c = a;理论上来讲每次使用a的时候都应该从a的地址来读取变量值,但是这存在一个效率问题,就是每次使用a都要去内存中取变量值,然后再通过系统总线传到CPU处理,这样开销会很大。所以那些编译器优化者故作聪明,把a读进CPU的cache里,像上面的代码,假如a在赋 值期间没有被改变,就直接从CPU的cache里取a的副本来进行赋值。但是bug也显而易见,可能a已经被另一
2015-07-16 09:42:54 455
原创 单例模式、双检测锁定DCL、volatile(转)
单例模式最要关心的则是对象创建的次数以及何时被创建。Singleton模式可以是很简单的,它的全部只需要一个类就可以完成(看看这章可怜的UML图)。但是如果在“对象创建的次数以及何时被创建”这两点上较真起来,Singleton模式可以相当的复杂,比头五种模式加起来还复杂,譬如涉及到DCL双锁检测(double checked locking)的讨论、涉及到多个类加载器(ClassLoader)协同时
2015-07-15 17:40:11 710
原创 《架构之美》笔记
美是创造矛盾并解决矛盾。架构的多关注点(例如业务逻辑、系统扩展性、持久、并发)和简洁性就是一种矛盾,美丽的架构能解决这种矛盾,使人内心产生愉悦;随着关注点的增加,架构也在不断演进;术:分层、组件化、服务化、标准化、缓存、分离、队列、复制、冗余、代理; 道:如何恰到好处地使用术,例如顿悟变化的道理、博弈中寻找平衡、相对与绝对的奥秘、开放的心态;爱因斯坦说:『让它尽可能简单,但不要过于简单』,美
2015-07-11 01:46:58 1104
原创 Android默认短信应用常识
在Android 4.4上,只有一个应用能接收到新增的SMS_DELIVER_ACTION intent和彩信广播WAP_PUSH_DELIVER_ACTION intent,哪个应用接收这个广播取决于用户在系统设置里选择了哪个应用作为默认短信应用。
2015-07-07 17:39:43 2615
原创 Android手机界面的各种状态
屏幕黑:屏幕亮:解锁界面: frameworks\policies\base\phone\com\android\internal\policy\impl\LockScreen.java 开锁界面:设置—>位置和安全—>设置屏幕锁定 ,具体选择那种开锁界面: 图案开锁: frameworks\policies\base\phone\com\android\internal\policy\
2015-07-01 10:35:21 1359
SurfaceView示例2
2014-12-22
surfaceview动画示例
2014-12-21
AIDL和远程Service调用实现音乐播放器
2013-12-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人