zoukankan      html  css  js  c++  java
  • fork创建进程使用

    1.fork创建进程的使用

     fork()返回值等于0时,表示创建子进程;

       fork()返回值大于0时,是主进程;

    #include<stdio.h>
    #include<stdlib.h>
    #include<sys/wait.h>
    #include<signal.h>
    
    void sig_handler(int signo)
    {
        printf("child process %d stop
    ", signo);
        //wait(0);
     
    }
    void out(int n)
    {
        int i = 0;
        for(i = 0; i < n; ++i)
        {
            printf("%d:%d out %d
    ", getpid(), i);
            sleep(1);
        }
    }
    int main(void)
    {
        if (signal(SIGCHLD, sig_handler) == SIG_ERR)
        {
            perror("sigchld error");
            exit(1);
        }
        
        pid_t pid = fork();
        if(pid < 0)
        {
            perror("fork error");
            exit(1);
        }
        else if(pid > 0)  //主进程
        {
            out(100);
        }
        else          //子进程
        {
            out(20);
        }
        
        return 0;
    }
  • 相关阅读:
    数据库
    Activity组件
    view,视图组件
    360导航板式
    service音乐播放
    service
    音乐播放器组件
    获取时间字符串
    JDK服务器存储
    数据库_黑名单练习_完善服务广播
  • 原文地址:https://www.cnblogs.com/weiyouqing/p/12708191.html
Copyright © 2011-2022 走看看