Android应用程序进程启动过程的源代码分析(七)

从peers.get(index)得到的是一个ZygoteConnection对象,表示一个Socket连接,接下来就是调用ZygoteConnection.runOnce函数进一步处理了。

上文调用了handleChildProc函数。

Step 7. ZygoteConnection.handleChildProc

这个函数定义在frameworks/base/core/java/com/Android/internal/os/ZygoteConnection.java文件中:

 
 
  1. [java] view plaincopyclass ZygoteConnection {
  2.   ......
  3.   private void handleChildProc(Arguments parsedArgs,
  4.   FileDescriptor[] descriptors, PrintStream newStderr)
  5.   throws ZygoteInit.MethodAndArgsCaller {
  6.   ......
  7.   if (parsedArgs.runtimeInit) {
  8.   RuntimeInit.zygoteInit(parsedArgs.remainingArgs);
  9.   } else {
  10.   ......
  11.   }
  12.   }
  13.   ......
  14.   }

由于在前面的Step 3中,指定了"--runtime-init"参数,表示要为新创建的进程初始化运行时库,因此,这里的parseArgs.runtimeInit值为true,于是就继续执行RuntimeInit.zygoteInit进一步处理了。

网站标题:Android应用程序进程启动过程的源代码分析(七)
网站链接:http://www.shufengxianlan.com/qtweb/news35/419685.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联