Linux的进程函数fork的使用
来源:互联网 发布:卡达目镜片 知乎 编辑:程序博客网 时间:2024/06/03 03:30
Linux的进程包含三大部分,进程控制块、正文段和数据段,保证进程可以实现共享数据,共享正文。
pid_t fork(void);
函数功能:产生一个子进程
返回值:
1)在父进程中,fork返回新创建子进程的进程ID;
2)在子进程中,fork返回0;
3)如果出现错误,fork返回一个负值;
下面是实例代码:
#include <unistd.h> #include <stdio.h> void isr(int nsig){ printf("pid = %d pidd = %di sig = %d\n",getpid(),getppid(),nsig); //wait();}int main () { pid_t fpid; //fpid表示fork函数返回的值 int count=0; signal(SIGCHLD,isr); //设置该信号,当产生子进程的时候,调用isr函数 fpid=fork(); if (fpid < 0) printf("error in fork!"); else if (fpid == 0) { count++; printf("i am the child process, my process id is %d, count = %d\n",getpid(),count); } else { wait();//等待子进程执行结束之后,再执行 count++; printf("i am the parent process, my process id is %d count = %d \n",getpid(),count); } return 0; }
运行结果:
i am the child process, my process id is 17621, count = 1
pid = 17620 pidd = 5665i sig = 17
i am the parent process, my process id is 17620 count = 1
说明只有一个进程在执行这段代码,但在这条语句之后,就变成两个进程在执行了,这两个进程的几乎完全相同,
0 0
- Linux的进程函数fork的使用
- Linux创建进程的fork()函数
- Linux下的多进程编程(转) - fork(),exec()等函数的使用
- Linux下的多进程编程——fork(),exec()等函数的使用
- linux系统编程学习day2--fork()函数的使用和子进程的创建
- linux中关于fork函数的使用
- linux 下的fork()函数使用例子
- Linux中fork()函数的使用
- Linux下fork函数的使用
- 有意思的进程创建函数fork() && fork() || fork() .
- Linux高编之进程————fork函数的使用(1)
- 【Linux】进程的创建fork()
- fork函数的使用
- fork函数的使用
- Linux多进程之fork()和vfork()函数的对比
- Linux进程函数fork(),vfork(),execX()的深入理解
- wait函数在fork创建子进程后的使用
- wait函数在fork创建子进程后的使用
- ZOJ 1671(广度搜索bfs)(Walking Ant)
- 结构体练习统计学生成绩
- OpenJDK 和 JDK区别
- Android AlertDialog的简单实用
- Android线程机制浅析(ppt)
- Linux的进程函数fork的使用
- 常用的两个算法
- 使用CXF开发web service 的服务器端(三)
- 华为机试题:洞穴逃生
- sdnuoj1087 过河
- 二叉树的最小公共祖先问题
- 移动开发 网络流量精简攻略
- java的native关键字
- Unity常用插件