为什么经常有这类的代码

来源:百度知道 编辑:UC知道 时间:2024/06/21 14:26:41
if ( fork () > 0 ) {
sleep(2);
exit (0);
}
经常看到这些代码,为啥要创建子进程,退出父进程???
if ( ( pid = fork( ) ) != 0 )
{
exit( 0 );
}

setpgrp( );
setsid( );
signal( SIGHUP, SIG_IGN );

if ( ( pid = fork( ) ) != 0 )
{
exit( 0 );
}
umask( 027 );

for ( i = getdtablesize( ) - 1; i >= 0; --i )
( void ) close( i );
不能直接就在父进程里执行吗??感觉好像这样很多余啊

不知道你有没有听过“进程链”,下面这个就是进程链
for (; i<MAX; i++)
{
if (fork() > 0)
{
break;
}
}

还有一种是进程扇

for ()
{
if (fork() == 0) //子进程退出
{
break;
}
}

希望这些对你有帮助

具体情况 具体分析