多进程的创建

简介: 创建成功子进程中返回0,失败返回-1.

利用fork函数创建多进程


调用fork函数:子进程复制父进程的地址空间,但是子进程的进程号还有定时器自己独有


fork函数()用于从已有的进程创建新的进程,


创建成功子进程中返回0,失败返回-1.


  #icnlude <unistd.h>
  #include <sys/types.h>
  #include <sys/wait.h>
  #include <sysy/stat.h>
  #include <fcntl.h>
  #include <string.h>
  int main(int argc,char *argv[])
  {
    //创建两个子进程
    int i = 0;
    for (i = 0 ; i < 2 ; i++;)
    {
      pid_t pid = fork();
      if(pid == 0)
        break;
    }
    if(i == 0)//子进程1
    {
    }
    else if(i == 1)//子进程2
    {
    }
    else if(i == 2)//父进程
    {
      //回收子进程资源
      while(1)
      {
        pid_t pid = waitpid(-1,NULL,WNOHANG);
        if(pid>0)
        {
          printf("子进程退出了\n");
        }
        else if(pid == 0)
        {
          continus;
        }
        else if(pid == -1)
        {
          break;
        }
      }
    }
    return 0;
  }
相关文章
|
Python
157 python网络编程 - 多进程服务器
157 python网络编程 - 多进程服务器
41 0
|
7月前
|
分布式计算 JavaScript 前端开发
多线程、多进程、协程的概念、区别与联系
多线程、多进程、协程的概念、区别与联系
110 1
|
7月前
|
计算机视觉 Python
Python 多进程以及进程共享参数
这段时间在做一款游戏的挂机软件,我发现进入游戏后的逻辑和判断人物死亡的逻辑需要同时进行(因为不知道什么时候就暴毙了),以前我习惯用线程来进行同步,但是我发现由于我的代码中的逻辑比较复杂,且有多个嵌套的无限循环会导致线程阻塞,所以我决定用进程的方式来实现同步运行。
|
7月前
|
并行计算 安全 数据库
多线程与多进程之间的区别
多线程与多进程之间的区别
|
Java
创建多线程的方式四:使用线程池
创建多线程的方式四:使用线程池
61 0
|
安全 Java 编译器
多线程(一): 进程 基础
多线程(一): 进程 基础
130 0
多线程(一): 进程 基础
|
Java
多线程相关面试题:并行和并发的区别、线程和进程、线程的创建方式、运行状态
多线程相关面试题:并行和并发的区别、线程和进程、线程的创建方式、运行状态
143 0
|
存储 安全 Python
进阶——python——多进程 (进程间共享状态)
进阶——python——多进程 (进程间共享状态)
【多线程学习笔记2】线程的创建与启动
【多线程学习笔记2】线程的创建与启动
|
安全 C++
_beginThreadex创建多线程解读
_beginThreadex创建多线程解读 一、需要的头文件支持 #include <process.h> // for _beginthread() 需要的设置:ProjectàSetting-->C/C++-->User run-time library 选择Debug Multithreaded 或者Multithreaded。即使用: MT或MTD。
166 0