进程的创建--fork()

fork
pid_t fork();
//1.创建进程
//2.新进程的代码是什么:克隆父进程的代码.而且克隆了执行的位置.
//3.在子进程不调用fork所以返回值=0;
//4.父子进程同时执行.
3.应用进程
使用fork创建新的进程有什么应用价值呢?
使用fork实现多任务.(Unix系统本身是不支持线程) 唯一价值!!!因为多进程编程会有很多问题(进程是不完美的),所
以才导致了多线程出现。。。unix很多版本是不支持多线程的。
实现对任务的选择:
1.进程
2.线程
3.信号 信号和异步是同一个原理
4.异步
5.进程池与线程池

栗子;

#include <stdio.h>
#include <unistd.h>  
int main()
{
    int pid;
    
    printf("创建进程前!\n");
    pid=fork();
    if(pid==0)
    {
        while(1)
        {
            printf("子进程\n");
            sleep(1);
        }    
    }
    else
    {
        while(1)
        {
            printf("父进程\n");
            sleep(1);
        }
    }
    return 0;
}

 

posted @ 2017-02-28 16:14  ren_zhg1992  阅读(89)  评论(0)    收藏  举报