我只是想知道:
谁创建了this.disposable = this.gameStream$.subscribe((data)=>{
this.timer_data = data
this.list_players = data
console.log(this.timer_data)
})
this.disposable.unsubscribe(); // ==> this will trigger the teardown logic to be called
?
dalvik_Vm
进程是在vm中运行还是相反?
答案 0 :(得分:7)
Dalvik VM
由Dan Bornstein
撰写
每个Android应用程序都在一个单独的进程中运行,拥有自己的Dalvik VM。
Zygote是一个守护进程,是启动应用程序的唯一任务。这意味着Zygote是所有App流程的父级。当app_process启动Zygote时,它会创建第一个Dalvik VM并调用Zygote的main()方法。一旦Zygote启动,它就会预加载所有必需的Java类和资源,启动System Server并打开一个socket / dev / socket / zygote来监听启动应用程序的请求。
答案 1 :(得分:1)
添加一些示例来说明Zygote是所有App进程的父级。 合子PID:481,我的应用程序处理PPID:481,您可以使用ps命令进行检查。
UID PID PPID C STIME TTY TIME CMD
root 481 1 0 09:17:54 ? 00:00:03 zygote
u0_a132 28993 481 78 09:07:53 ? 00:23:46 com.languouang.helloworld
u0_a132 29013 481 0 09:07:53 ? 00:00:01 com.languouang.helloworld:countservice
u0_a132 29296 481 1 09:09:04 ? 00:00:09 com.languouang.helloworld:mall
u0_a132 30427 481 1 09:16:42 ? 00:00:15 com.languouang.helloworld:faq
答案 2 :(得分:0)
Zygote实际上是启动过程启动时发生的init进程的子进程。 它负责加载执行我们的Dalvik字节码的Dalvik虚拟机。而且,它会将所有必需的资源,所有共享的Java类和资源预加载到内存中。