Android 同步机制
摘要
Android系统里面的进程数目以千计,每个进程所需要的资源互相独立而又不干涉,来来往往犹如忙碌的工蚁,辛勤的搬运着“食物”(资源)从遥远的目的地到蚁穴,然后又从蚁穴搬运到更远地方, 如此循环直到老死途中。。。 甚是悲凉
原子操作
- 从化学角度来看,难道是要造弹爆炸世界?[认真脸…..]
- 从代码角度来看,一旦开始了就注定要运行到结束,不会被任何线程调用机制打断,谁让这货就是专一呢?
- 应用场景: 访问一些切换与上下文(contex switch)资源,最好使用原子变量,以防止访问的资源存在被外部修改的可能性
- Android 内部一些列的原子操作(主要有自增、自减、与、或、设置、获取)
int32_t android_atomic_xx(int32_t value, volatile int32_t *addr);
- 原子操作实现原理
- 通过内嵌一段汇编代码(类似代码在kernel