linux fork 函数
来源:互联网 发布:淘宝上1元秒杀是真的吗 编辑:程序博客网 时间:2024/04/30 14:48
计算机程序设计中的分叉函数。返回值: 若成功调用一次则返回两个值,子进程返回0,父进程返回子进程标记;否则,出错返回-1。fork函数将运行着的程序分成2个(几乎)完全一样的进程,每个进程都启动一个从代码的同一位置开始执行的线程。这两个进程中的线程继续执行,就像是两个用户同时启动了该应用程序的两个副本。下面是fork函数工作的一个例子。
#include <unistd.h> #include <stdio.h> int main () { pid_t fpid; //fork returns fpid int cnt=0; fpid=fork(); if (fpid < 0) printf("error in fork!"); else if (fpid == 0) { printf("I am the child process, process id : %d\n",getpid()); cnt++; } else { printf("I am the parent process, process id : %d\n",getpid()); cnt++; } printf("count: %d\n",cnt); return 0; }运行gcc fork.c -o fork得到fork可执行文件,运行:./fork
得到如下结果:
I am the parent process, process id : 1924count: 1I am the child process, process id : 1925count: 1在fpid=fork();语句之后,就是两个进程执行从if(fpid<0)开始的代码。由于在复制时复制了父进程的堆栈段,所以两个进程都停留在fork函数中,等待返回。因此fork函数会返回两次,一次是在父进程中返回,另一次是在子进程中返回,这两次的返回值是不一样的。
1 0
- linux fork() 函数学习
- linux fork()函数学习
- linux fork函数学习
- linux fork()函数学习
- linux fork函数浅析
- Linux fork()函数学习
- linux C fork函数
- linux fork函数浅析
- fork()函数 Linux
- fork()函数 Linux
- linux fork函数浅析
- linux fork函数浅析
- linux fork 函数解析
- linux fork函数浅析
- Linux fork函数
- Linux fork 函数详解
- Linux Fork函数讲解
- linux fork函数浅析
- 在VS2010中运行带命令行参数程序
- 自定义iOS7导航栏背景,标题和返回按钮文字颜色
- Spring(三)Spring三种实例化JavaBean的方式
- POJ-3984-迷宫问题-BFS(广搜)-手写队列
- /var/spool/clientmqueue文件多导致磁盘满
- linux fork 函数
- Android设计中的.9.png
- Android Studio上方便使用butterknife注解框架的偷懒插件Android Butterknife Zelezny
- 关于js的总结
- C++中WINAPI函数参数中的IN和OUT
- 使用Python递归对文件进行相关处理
- Java4Android-面向对象的应用1
- string转换成int的算法
- Android访问权限大全