关于fork:
http://blog.csdn.net/jason314/article/details/5640969
fork代码如下:
static void JNICALL create (JNIEnv *env, jclass thiz, jobject context, jclass clazz){
pid_t ppid = getpid();
pid_t pid = fork();
if (pid < 0) {
LOG_D(LOGTAG, "create--fork failed!");
} else if (pid == 0) {
LOG_D(LOGTAG, "create--runOnSubprocess start...");
runOnSubprocess(env,clazz,ppid,context);
LOG_D(LOGTAG, "create--runOnSubprocess finished!");
exit(1);
} else {
LOG_D(LOGTAG, "create--run on parent process!");
}
}
5 个解决方案
#1
你好,问下你的这个问题解决了吗?我现在也遇到这个问题,始终进不去子进程
#2
后面由于采用了其他方案,没有深入研究,我当时发现开始时是可以成功fork的,但运行多次之后就不行了,我怀疑是之前fork的没有销毁,所以无法进入
#3
应该是可以fork成功的,估计查看日志的方式有问题。可以使用adb shell 然后 ps 打印所以进程进行查看是否成功
#4
我也遇到同样的问题,有大神解决出来了吗?
#5
#1
你好,问下你的这个问题解决了吗?我现在也遇到这个问题,始终进不去子进程
#2
后面由于采用了其他方案,没有深入研究,我当时发现开始时是可以成功fork的,但运行多次之后就不行了,我怀疑是之前fork的没有销毁,所以无法进入
#3
应该是可以fork成功的,估计查看日志的方式有问题。可以使用adb shell 然后 ps 打印所以进程进行查看是否成功
#4
我也遇到同样的问题,有大神解决出来了吗?