fork()函数
2017-03-22 23:24
148 查看
以自己遇到的一道题为例:
编写一个启动五个进程的并发程序,让每个进程中的线程打印几行输出,然后停止
刚开始觉得写3个fork()产生8个进程,然后kill 3个进程就好,后来才发现很难实现
后来想了好久才想出下面的简单方法:
#include<stdlib.h>
#include<stdio.h>
intmain() {
int pid,pid1,pid2;
pid = fork();
pid1 = fork();
if(pid == 0 && pid1 == 0)
fork();
printf("process!\n");
return 0;
}
就是先fork两次,产生四个进程,又发现在四个进程中,只有一个进程同时满足if条件,就在这个if中再fork一次,这样就再生成一个子进程,一共5个进程
编写一个启动五个进程的并发程序,让每个进程中的线程打印几行输出,然后停止
刚开始觉得写3个fork()产生8个进程,然后kill 3个进程就好,后来才发现很难实现
后来想了好久才想出下面的简单方法:
#include<stdlib.h>
#include<stdio.h>
intmain() {
int pid,pid1,pid2;
pid = fork();
pid1 = fork();
if(pid == 0 && pid1 == 0)
fork();
printf("process!\n");
return 0;
}
就是先fork两次,产生四个进程,又发现在四个进程中,只有一个进程同时满足if条件,就在这个if中再fork一次,这样就再生成一个子进程,一共5个进程
相关文章推荐
- FORK()函数的理解
- linux中的fork()函数
- fork()函数及例题
- 深入浅出--UNIX多进程编程之fork()函数
- linux中fork()函数详解
- 浅析fork()函数
- fork()函数
- fork()函数使用的链接很好
- 对fork函数的体会
- linux中fork()函数详解(实例讲解)
- 关于fork()函数特性的一些探究
- fork函数产生进程
- Linux下的C开发之fork()函数的趣味应用
- fork函数详解
- 关于fork()函数的两个返回值
- Linux 文件系统(三)---dup和fork函数执行后的文件情况
- wait/waitpid函数与僵尸进程、fork 2 times
- UNIX环境编程学习笔记(19)——进程管理之fork 函数的深入学习
- 从一段代码看fork()函数及其引发的竞争
- linux中fork()函数详解