0
嗨,我有一个简单的问题,但时间问题困扰着我。假设这是代码。父进程和子进程时间
#include <stdio.h>
int main() {
int p = fork();
if (p==0) {
printf("ok\n");
sleep(1);
} else {
printf("hey!");
sleep(1);
}
printf("done!");
return 0;
}
我的问题是,将“完成!”当父母和孩子的睡眠时间为1秒时,总是执行两次。因为我注意到当我在子进程中将睡眠增加到10秒(p == 0的情况)时,我只看到“完成!”一旦。
但是总是会在睡眠时打印两次事件(1)? – 2015-02-08 04:59:19
不,没有保证,您需要等待()建议回答 – Kam 2015-02-08 05:00:17