美文网首页
IPC学习之路一——开启多进程

IPC学习之路一——开启多进程

作者: 阳光的nick_lxz | 来源:发表于2017-09-25 17:59 被阅读0次

    安卓开启多进程方式

    1,安卓开启多进程的方式: 在manifest文件中给Activity 配置 android:process="" 属性 引号内接进程名。

    image.png

    如上图,这两个activity运行在不同的进程中。没有指定process属性的,运行在默认进程中,进程名是包名。
    ThirdActivity中的process属性中的“:”表示前面附加程序包名。并且是私有进程,其他应用的组件不能通过shareUID方式和它跑在同一个进程中。而进程名不以“:”开头的属于全局进程,其他应用可以通过ShareUID方式与它跑在一个进程中。
    一般来说,多进程会造成如下面几方面的问题:

    • 静态成员和单例模式完全失效
    • 线程同步机制完全失效
    • SharePreference的可靠性下降。
    • Application会被多次创建

    在操作系统中,线程是CPU调度的最小单元,而进程是一个执行单元,一个进程可以包含单个或者多个线程。回到安卓中,每一个应用一般就是一个进程,都有一个独立的虚拟机,不同的虚拟机在内存分配上有不同的地址空间,所以多进程就有多个虚拟机(类似应用多开),也就是说一旦你的应用开启了多进程,其实想当于开启了多个应用,于是Application就会被多次创建,既然是多个应用,每个应用里面的对象都不关联的,所以静态成员和单例模式失效,既然对象是独立的,那么锁也是独立的,所以线程同步机制失效

    相关文章

      网友评论

          本文标题:IPC学习之路一——开启多进程

          本文链接:https://www.haomeiwen.com/subject/qfkssxtx.html