1.Android实现多进程常规方法只有一种方法:给四大组件加上android:process属性(非常规方法:JNInative层去fork一个新进程)Binder,Socke,intent,messenger共享文件,sharedpreferences可用于进程通讯,handler用于线程通讯)

Android:process=”:XXXXX”(私有进程)android:process=”XXXXX”(全局进程)以冒号开头的进程为当前应用进程的私有进程(其它应用的组件不能跟其跑在同一进程里),在其进程名前会自动加上当前应用的包名package:XXXXX

同一应用中进程1对静态全局变量赋的值不会影响进程2中对应的静态全局变量同时同一应用开启多进程带来的问题:(不同进程的组件会拥有独立的虚拟机,Application,内存空间)

1.静态成员和单例模式完全失效

2.线程同步机制完全失效(进程不一样,锁的不是同一对象)

3.SharedPreferences可靠性下降(不支持并发写)

4.Application会多次创建(创建新进程同时分配独立虚拟机等同于启动一个应用)



2.序列化方式Serializable(Java)Parcelable(Android)

Serializable:较为简单只需添加serialVersionUID(辅助反序列化过程)

Parcelable:可实现对属性的制定传递writeToParcel()(序列化过程),CREATOR(反序列化过程)当序列化过程中需要传递实现了序列化的对象(即序列化对象内包含另一个序列化对象),则该对象的反序列化过程要传递当前线程的上下文加载器如

Book=in.readParcelable(Thread.currentThread().getContextClassLoader())

更多相关文章

  1. 知识梳理之Android进程
  2. Android多进程之Binder解绑监听的问题
  3. Android 对象序列化之你不知道的 Serializable
  4. Android 对象序列化之 Parcelable 取代 Serializable ?
  5. Android 对象序列化之追求完美的 Serial
  6. Android异步处理系列文章四篇之一使用Thread+Handler实现非UI线
  7. Android跨进程通信IPC系列

随机推荐

  1. Android ListView滑动过程中图片显示重复
  2. Afaria Android客户端使用afariaseed.xml
  3. android AsyncTask类的使用
  4. Android电子拍卖系统学习笔记
  5. Android 获取手机上图片和视频的缩略图 A
  6. 学习笔记之——基于ArcGIS的Android地图
  7. 如何在Windows下搭建Android开发环境
  8. Android Emulator 模拟器使用方法
  9. Android 底层开发例子一
  10. 【Android(安卓)界面效果32】ImageView中