标签:适合 native style 终端 简单 指定 arc dma 进程通信
IPC是Inter-Process Communication的缩写,含义是进程间通信,是指两个进程之间进行数据交换的过程。在Android中,最有特色的进程间通信方式就是Binder了,通过Binder可以轻松地实现进程间通信。
Android还支持Socket,通过Socket可以实现任意两个终端之间的通信。
Android中使用多进程只有一种方法,那就是给四大组件在AndroidManifest中指定android:process属性。还有一种非常规的多进程方法,那就是通过JNI在native层去fork一个新的进程,这种方法属于特殊情况,不是常用的创建多进程的方式。
实现跨进程通信的方式很多,比如通过Intent来传递数据,共享文件和SharedPreferences,基于Binder的Messager和AIDL以及socket等。
Serializable是Java所提供的一个序列化接口,是一个空接口,为对象提供标准的序列化和反序列化操作。想让一个对象实现序列化,只需要这个类实现Serializable接口并声明一个serialVersionUID即可。如果不声明这个serialVersionUID同样也可以实现序列化,但是这将会对反序列化过程产生影响。
静态成员变量属于类不属于对象,所以不会参与序列化过程。
用transient关键字标记的成员变量不参与序列化过程。
Parcelable接口也可以用来实现序列化,只要实现这个接口,一个类的对象就可以实现序列化并可以通过Intent和Binder传递。
系统已经为我们提供了许多实现了Parcelable接口的类,它们都是可以直接序列化的,比如Intent、Bundle、Bitmap等,同时List和Map也可以序列化,前提是它们里面的每个元素都是可序列化的。
Serializable接口是Java中的序列化接口,使用起来简单但是开销大,序列化和反序列化过程需要大量I/O操作。主要用在将对象序列化到存储设备中或者将对象序列化通过网络传输。
Parcelable是Android中的序列化方式,更适合用在Android平台上,缺点是使用起来稍微麻烦点,但是效率高。主要用在内存序列化上。
标签:适合 native style 终端 简单 指定 arc dma 进程通信
原文地址:http://www.cnblogs.com/fankongkong/p/7245858.html