jce0217
2021-08-31 08:33
采纳率: 100%
浏览 34

关于android中的进程问题

在android系统中,一个app是一个进程,这是肯定的。
但在一个app中,activity和service好像也是一个进程。例如intent和binder都是用来进程间通信的,在两个组件(activity或service)通信是会使用到这两个机制。
但是一个进程(app)里面怎么还能有进程(activity或service),是我的理解有错,还是这里边的机制有我没有明白的地方。
希望有人可以解答一下,谢谢

  • 收藏

3条回答 默认 最新

  • 八云黧 2021-08-31 08:49
    已采纳

    程序是唯一的,一个app是一个程序,但一个程序不一定只有一个进程,这个程序可以是多进程的、可以是多线程的、也可以是多进程多线程的
    你可以认为一个进程是一个模块,一个app可以只有一个主模块,但也可以额外有许多其他模块

    已采纳该答案
    1 打赏 评论
  • qq_1113502097 2021-08-31 10:57

    一个app是一个进程本身就是一个错误的说法,只不过是方便理解的说法。正确的是,当我们启动app的时候,系统进程会分发一个子进程给app,那么app本身就相当于一个进程,既然如此,进程就可以开新的进程。因此准确的理解就是,如果不做操作,那么所有的app就是在一个进程中运行,但是我们可以将任务进行拆分,从而运行在不同的进程中,

    1 打赏 评论
  • hlllmr1314 2021-08-31 13:09

    一个应用是可以运行多个进程的, 可以通过android:process 来设置运行在单独进程!

          <service
                android:name="xx.xx.XXPosService"
                android:process=":remote"
                android:enabled="true"
                android:exported="true"/>
    
    打赏 评论

相关推荐 更多相似问题