linux进程代码fork案例
来源:互联网 发布:dna计算机 知乎 编辑:程序博客网 时间:2024/06/07 06:49
fork函数位于unistd.h头文件,用来创建一个新的进程,原来的进程依然会存在。
#include<stdio.h>#include<unistd.h>#include<stdlib.h>pid_t Fork(void){ pid_t pid; if((pid=fork())<0) { perror("Fork error"); } return pid;}int main(){ int x=1; if(Fork()==0) { printf("printf1:x=%d\n",++x);
//exit(0); } printf("printf2:x=%d\n",--x); exit(0);}如果没有取消注释,结果是:
printf1:x=2;
printf2:x=1;
printf2:x=0;
可以看出,Fork函数执行后,产生并进入子进程,但是依次执行
printf("printf1:x=%d\n",++x);
printf("printf2:x=%d\n",--x);最后子进程退出,父进程继续,从if语句判断后开始执行,只会执行
printf("printf2:x=%d\n",--x);
父进程和子进程的数据是来自与程序的拷贝,所以两个进程的变量x之间没有影响。
如果注释被取消,
printf1:x=2;
printf2:x=0;
子进程被exit,所以没有接着执行。
0 0
- linux进程代码fork案例
- linux子进程fork
- Linux:fork进程创建
- linux 进程控制 fork
- Linux进程 -- fork操作
- linux新建进程--fork
- Linux-fork进程创建
- Linux多进程-fork()
- linux进程控制-fork()
- linux进程(fork,waitpid)
- 【linux进程】fork函数浅析
- linux进程(fork,waitpid)
- Linux 进程之fork()讲解
- linux——fork(进程)
- Linux fork()创建子进程
- Linux c fork进程实践
- linux进程(fork,waitpid)
- 【Linux】进程的创建fork()
- AudioManager 的使用
- 标准源码下载
- OpenWRT添加模块<六>: 为现存的公有包添加新的私有文件
- hadoop job -list报错解决方法
- 企航网络手把手剖析软文营销发挥的作用?
- linux进程代码fork案例
- C结构体之位域(位段)
- uiview的裁剪
- 简单计算器算法 转
- 数据结构排序之直接选择排序
- C程序的实现
- Android 自定义Progressbar,任何图片都能当成progressbar转动起来
- 图像处理之图像直方图
- MySQL安装:编译安装5.5