fork()函数的简单程序
2016-05-05 22:54
323 查看
#include <stdio.h>
#include<apue.h> //注:自定义的头文件
int main (int argc,char **argv)
{
fork();
fork() && fork(); //短路运算
//fork();
pause();
return 0;
}
/*
int main (int argc,char **argv)
{
if(fork() == 0 ){
printf("a\n");
exit(0);
}else{
printf("b\n");
waitpid(-1,NULL,0); //回收子进程 ,如果子进程终止,而父进程并未进行回收,则就是僵尸进程,只有程序
} //运行结束之后,系统1号进程进行回收
printf("c\n");
return 0;
}
*/
/*
int main (int argc,char **argv)
{
int x = 1;
if (fork() == 0){
printf("child_printf: %d\n" , ++x); //输出2
}
printf("public_printf : %d\n", --x); //输出2次 0 和 1
return 0;
}
*/
/*
int main (int argc,char **argv)
{
fork();
fork();
printf("hello , world!\n"); //输出4次,它属于代码段,子进程拷贝父进程
return 0;
}
*/
/*
* 父子进程共享.text .data ,当更改数据时,子进程会拷贝父进程的数据
* 父子进程会有自己的空间(栈帧,)
int main (int argc,char **argv)
{
int x = 1;
if(fork() == 0 ){
++x;
printf("child_printf %d = ", x );
}else{
--x;
printf("parents %d =" , x);
}
return 0;
}
*/
#include<apue.h> //注:自定义的头文件
int main (int argc,char **argv)
{
fork();
fork() && fork(); //短路运算
//fork();
pause();
return 0;
}
/*
int main (int argc,char **argv)
{
if(fork() == 0 ){
printf("a\n");
exit(0);
}else{
printf("b\n");
waitpid(-1,NULL,0); //回收子进程 ,如果子进程终止,而父进程并未进行回收,则就是僵尸进程,只有程序
} //运行结束之后,系统1号进程进行回收
printf("c\n");
return 0;
}
*/
/*
int main (int argc,char **argv)
{
int x = 1;
if (fork() == 0){
printf("child_printf: %d\n" , ++x); //输出2
}
printf("public_printf : %d\n", --x); //输出2次 0 和 1
return 0;
}
*/
/*
int main (int argc,char **argv)
{
fork();
fork();
printf("hello , world!\n"); //输出4次,它属于代码段,子进程拷贝父进程
return 0;
}
*/
/*
* 父子进程共享.text .data ,当更改数据时,子进程会拷贝父进程的数据
* 父子进程会有自己的空间(栈帧,)
int main (int argc,char **argv)
{
int x = 1;
if(fork() == 0 ){
++x;
printf("child_printf %d = ", x );
}else{
--x;
printf("parents %d =" , x);
}
return 0;
}
*/
相关文章推荐
- linux命令(5):netstat命令
- Mono和Jexus并且部署ASP.NET MVC3、4、5和WebApi
- 第一次课堂作业——计算圆的面积
- 使用 ViewPager 和 RadioGroup 封装的一个导航控件
- 20160505交易记录
- @RequestMapping 参数大全
- ZOJ 3605 找大理石———————
- linux命令(4):vmstat命令
- 《javascript面向对象编程指南》——闭包
- win8.1下安装双系统ubuntu14.04.3
- JAVA基础(二)字节 字符 编码
- Memcached 使用中的问题
- 关于一个ListView使用多个item布局在优化时出现显示错乱的解决方案
- 阅读了几个别人写的轮播源码
- linux命令(3):rpm命令
- Java虚拟机类加载机制——案例分析
- js中prototype的陷阱
- 采用CLM在ANDROID上实现的人脸匹配
- Java 网络编程
- Android-LayoutInflater