1.利用管道pipe()和fork()创建子进程和进程间的通信
pid_t pid;
int pfds[2];
pipe(pfds);创建管道
pid = fork();创建进程
if(pid > 0)父进程
{
//读管道pfds[0]
}
else if(pid == 0)子进程
{
//通过exec 函数簇执行第三方程序
例如 : 借助 dup2(pfds[1],STDOUT_FILENO);标准输出到管道写端
execp(“ls” ,argv);向管道写入数据
}
else if(pid < 0){} //(fork)创建进程失败
pid_t pid;
int pfds[2];
pipe(pfds);创建管道
pid = fork();创建进程
if(pid > 0)父进程
{
//读管道pfds[0]
}
else if(pid == 0)子进程
{
//通过exec 函数簇执行第三方程序
例如 : 借助 dup2(pfds[1],STDOUT_FILENO);标准输出到管道写端
execp(“ls” ,argv);向管道写入数据
}
else if(pid < 0){} //(fork)创建进程失败