该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

pid_t pidArray[10];

void myhandler(int num,siginfo_t *st,void *p)

{

printf("recv num:%d,data = %d\n",num,st->si_value.sival_int);

}

void main()

{

int i;

struct sigaction act;

act.sa_sigaction = myhandler;

act.sa_flags = SA_SIGINFO;

if(sigaction(SIGRTMIN+1,&act,NULL) == -1)

{

perror("func sigaction err:");

return -2;

}

if(sigaction(SIGRTMIN+2,&act,NULL) == -1)

{

perror("func sigaction err:");

return -2;

}

if(sigaction(SIGRTMIN+3,&act,NULL) == -1)

{

perror("func sigaction err:");

return -2;

}

int pid = 0;

for(i=0;i<2;i++)

{

pidArray[i] = pid = fork();

if(pid == 0)

{

break;

}

}

if(pid > 0)

{

printf("parents running\n");

exit(0);

}

if(pid == 0 && i == 0)

{

printf("child1 running\n");

exit(0);

}

if(pid == 0 && i == 1)

{

printf("child2 running\n");

exit(0);

}

int mypid;

while(mypid = waitpid(-1,NULL,WNOHANG) > 0)

{

printf("child exit pid:%d \n",mypid);

}

}

linux waitpid子进程,关于waitpid()函数的问题,为什么最后子进程没退出来啊?...相关推荐

  1. Linux系统编程之waitpid函数详解

    5.1 为什么要进行进程资源的回收 当一个子进程退出之后,该进程能够回收自己的用户区的资源,但是不能回收内核空间区的PCB(process control block 进程控制块)资源. (即:子进程 ...

  2. linux进程(fork,waitpid)

    对于进程的一生可以用一些形象的比喻作一个小小的总结: 随着一句fork,一个新进程呱呱落地,但它这时只是老进程的一个克隆. 然后随着exec,新进程脱胎换骨,离家独立,开始了为人民服务的职业生涯. 人 ...

  3. linux中wait与waitpid的差别

    zombie不占用内存也不占用CPU,表面上我们可以不用在乎它们的存在,然而事实上UNIX系统限制了某一时刻能同时存在的进程的最大数目.如果程序不及时清理系统中的zombie,最终会导致进程数过多,当 ...

  4. python waitpid_「waitpid」wait(),waitpid()函数 - seo实验室

    waitpid 首先我们来了解一下所谓的僵尸进程, 僵尸进程就是两个进程,一个父进程,一个子进程,其子进程终止后,0-3G的用户内存被回收,而3-4G的部分内存被回收,但是3-4G内存中的PCB等待父 ...

  5. linux父进程中显示子进程pid,请教linux下c语言函数fork父进程打印子进程的PID

    请教linux下c语言函数fork父进程打印子进程的PID 关注:296  答案:2  信息版本:手机版 解决时间 2019-01-14 04:55 雨不眠的下 2019-01-13 12:23 用于 ...

  6. linux系统如何使用fork函数创建子进程

    大家都知道linux是多进程的系统.可是,在linux中,进程是如何创建并运行的呢? 在linux系统中创建进程有两种方式:一是由操作系统创建,二是由父进程创建进程(通常为子进程).系统调用函数for ...

  7. linux exec 二程序,二十五、Linux 进程与信号---exec函数

    25.1 介绍 在用 fork 函数创建子进程后,子进程往往要调用一种 exec 函数以执行另一个程序 当进程调用一种 exec 函数时,该进程完全由新程序代换,替换原有进程的正文,而新程序则从其 m ...

  8. Linux系统常用函数,浅谈linux下的一些常用函数的总结(必看篇)

    1.exit()函数 exit(int n)  其实就是直接退出程序, 因为默认的标准程序入口为int main(int argc, char** argv),返回值是int型的. 一般在shell下 ...

  9. Linux系统编程之进程退出,父进程等待子进程退出

    1.首先讲一下进程的退出 进程的退出分为正常退出和异常退出: 正常退出: (1)main函数调用return (2)进程调用exit(),标准C库 (3)进程调用_exit()或_Exit(),属于系 ...

  10. Linux进程全解7——父进程wait / waitip回收子进程

    以下内容源于朱有鹏<物联网大讲堂>的课程学习整理,如有侵权,请告知删除. 一.wait介绍 1.wait的工作原理 (1)子进程结束时,系统向其父进程发送SIGCHILD信号: (2)父进 ...

最新文章

  1. R语言使用t.test函数计算两组独立数据的t检验(Independent t-test)
  2. X5本地应用打包服务器环境搭建
  3. 作幼儿教育软件的感受(2005-05-09)
  4. 面试官问的hibernate和mybatis常见面试题
  5. 文档生成组件工作估算
  6. 《浪潮之巅》读书笔记(中)
  7. Oracle数据库中闪回恢复的详细分析
  8. 终于来了!微软正式推出 VS Code 测试 API
  9. LEX和YACC的使用(例子)
  10. 驱动开发中常用的操作和小知识
  11. 办公自动化-ppt的创建实操-各个对象的理解-0223
  12. 图解SQL的Join(转摘)
  13. 从零开始带你成为消息中间件实战高手_系统化开课了,电子入门一切从零开始,喜欢电子的有机会学习了...
  14. hp1015驱动64位_惠普1015打印机驱动下载
  15. 编译CM-MK802
  16. 极简番茄钟与白噪音|潮汐
  17. 精通css网页布局 pdf,精通CSS网页布局
  18. Rundll32.exe使用方法大全
  19. ADA4939 ADA4930
  20. 基于MATLAB/Simulink搭建的纯电动汽车整车仿真模型,包括驾驶员模块,电机模块,制动能量回收模块

热门文章

  1. 接种新冠疫苗到实现完全免疫最快需要35天
  2. glibc之pthread_mutex_t/pthread_cond_t实现原理(十七)
  3. Emacs:报错:File error: Cannot open load file,cl-lib解决
  4. LOCAL_MODULE_TAGS 选项说明
  5. 计算机基础(六):内存申请方式
  6. python中的字典和类的区别_Python中的 字典和字典数据类型
  7. pycharm安装后,找不到Python解释器怎么办
  8. python序列中各元素之间存在顺序关系_《Python Cookbook(第3版)中文版》——1.10 从序列中移除重复项且保持元素间顺序不变-阿里云开发者社区...
  9. big sur支持机型_小米10 Pro官方下架:高端在售机型只剩它
  10. python安装matplotlib绘图库