您的位置:首页 > 运维架构 > Linux

linux进程控制之用fork()函数打印n层进程二叉树

2013-05-14 15:29 465 查看
本例只打印3层

#include <stdio.h>

#include <unistd.h>

int main()

{

int i;

for(i=0;i<3;i++) //变量i为打印层数,本例之打印3层

{

pid_t t1=fork();

pid_t t2=0;

if(t1>0)

t2=fork();

if(t1>0&&t2>0)

break;

}

while(1); //此处用死循环是为了能用pstree命令查看

}

将代码稍作修改即可打印3叉树

#include <stdio.h>

#include <unistd.h>

int main()

{

int i;

for(i=0;i<3;i++)

{

pid_t t1=fork();

pid_t t2=0;

pid_t t3=0;

if(t1>0)

t2=fork();

if(t1>0&&t2>0)

t3=fork();

if(t1>0&&t2>0&&t3>0)

break;

}

while(1);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: