
Android深入分析
xuguoli_beyondboy
只要笑一笑,没什么过不了。程序员懂得编程之美,也要懂得生活之美,艺术之美,心理之美。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
android内存管理(二)
匿名内存共享 匿名内存简单介绍 Anonymous Shared Memory是Android特有的内存共享机制,它是基于linxus共享内存而改进的,它可以将指定的物理内存分别映射到各个进程自己的虚拟的地址空间中,从而便捷地实现进程间的内存共享。 关于linxus的进程间内存共享通讯的简单介绍及实例,请参考下面这两篇博客: http://blog.youkuaiyun.com/ljianhui/ar原创 2015-12-12 16:29:05 · 665 阅读 · 0 评论 -
android内存管理(三)
垃圾内存回收算法在垃圾内存回收算法中,我们常见的垃圾回收算法有引用计数法(Reference Counting)、标注并清理(Mark and Sweep GC)、拷贝(Copying GC)和逐代回收(Generational GC)等算法。 引用计数回收法: 记录每个对象被引用的次数。每当创建一个新的对象,或者将其它指针指向该对象时,引用计数都会累加一次;而每当将指向对象的指针移除时,引用计原创 2015-12-22 21:55:34 · 893 阅读 · 0 评论 -
android内存管理(一)
虚拟内存如果在程序被挂起或被换出前仅仅使用了一部分进程快,那么为该进程给内存中装入太多的块显然会带来巨大的浪费。而虚拟内存借助磁盘和内存交换,仅仅装入这小部分块来更好地使用内存,然后,如果程序转移到或访问到不在内存中的某个快中的指令或数据时,就会引发一个中断,告诉操作系统读取需要的块。 我们知道进程中的所有内存访问都是逻辑地址,这些逻辑地址在运行时动态的被转换成物理地址,而这意味着一个进程原创 2015-12-08 18:27:28 · 1954 阅读 · 0 评论 -
Handler,MessageQueue,Runnable与Looper
三者关系Handler是处理消息或发送消息,MessageQueue存储消息,Runnable安排执行任务,Looper循环MessageQueue消息队列,并取出消息到给制定Handler处理。其三者具体关系如下: 每个Thread只对应一个Looper。 每个Looper只对应一个MessageQueue。 每个MessageQueue中有N个Message。 每个Message中最多指定一个H原创 2015-12-27 16:51:05 · 1135 阅读 · 0 评论 -
安卓智能指针
为什么要安卓智能指针在安卓系统中,为提高运行效率,其框架中间层很多是采用c++和c语言去实现的,在这实现过程,必定会应用不少地指针操作,同时c++和c不想Java那样有垃圾自动回收功能,因此会使程序员在某些操作常常遇到一些如下的问题: 忘记指针初始化,这是指针在程序执行过程中,会随机指向某个地址,一旦这个地址是程序或系统核心部分,容易引起数据错误或系统崩溃等错误(这个问题很好解决,将指针默认设置为n原创 2016-02-04 00:56:41 · 991 阅读 · 0 评论 -
Binder机制(一)
binder的介绍:由于不同的进程不可以直接互相访问,所以需要一些机制来确保进程间能够通信,在linxu中,有以下几种: 1.管道(Pipe)及有名管道(named pipe):管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信。 2.信号(Signal):信号是比较复杂的通信方式,用于通知接受进程有某种事件发生,原创 2016-02-26 02:03:58 · 2016 阅读 · 0 评论