【发布时间】:2012-04-08 18:24:30
【问题描述】:
我需要一些有关 clone() 系统调用的帮助。 我正在尝试将它与标志 CLONE_CHILD_CLEARTID 一起使用,但我看不到我指定为参数的字段的值有任何变化。 这是一个简单的代码:
int the_child(){
exit(0);
}
int main(int argc, char * argv[])
{
pid_t child_id = 99;
printf("child %p\n",child_id);
clone((int (*)(void *))the_child,
NULL,
CLONE_VM | CLONE_CHILD_CLEARTID | SIGCHLD,
NULL, NULL,NULL, child_id);
sleep(1);
printf("child %p\n",child_id);
}
但是当两个printf显示总是99时,我做错了什么?
【问题讨论】:
标签: c linux clone system-calls