Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 做!fork()创建一个进程?_C_Process_Fork - Fatal编程技术网

C 做!fork()创建一个进程?

C 做!fork()创建一个进程?,c,process,fork,C,Process,Fork,例如,如果我打电话 if (!fork()) 这是否会创建一个新流程,如调用 if (fork()) 还是没有?这是一样的,fork在进行检查之前进行评估 if(!fork())与函数本身的if(fork())相同,但与if语句检查不同。当然。为了执行 if (! <expression>) [在这两种情况下]只有在实际调用fork()时才能计算条件。这怎么不是您可以自己测试的东西呢?if(fork()){//父进程}else//子进程if(!fork()){//子进程}els

例如,如果我打电话

if (!fork())
这是否会创建一个新流程,如调用

if (fork())

还是没有?

这是一样的,
fork
在进行检查之前进行评估


if(!fork())
与函数本身的
if(fork())
相同,但与
if
语句检查不同。

当然。为了执行

if (! <expression>)

[在这两种情况下]只有在实际调用fork()时才能计算条件。这怎么不是您可以自己测试的东西呢?if(fork()){//父进程}else//子进程if(!fork()){//子进程}else//父进程
pid_t pid = fork();
if (!pid)