[学习笔记]孤儿进程僵死进程
#include<stdio.h> #include<stdlib.h> #include<string.h> #include <unistd.h> #include<errno.h> #include <signal.h> /* 孤儿进程 int main(void) { pid_t pid; pid = fork(); if (-1 == pid) { perror("fork err"); return 0; } if (pid > 0) { ; } if (0 == pid) { sleep(199); } return 0; } */ //僵死进程 //避免方法:创建子进程的时候可以不管子进程,让Linux内核去管 //信号:异步处理事件,是一种机制. //言外之意是说:我们的程序在顺序执行的同时能支持异步的调用信号处理函数. //站在Linux内核的角度. int main(void) { pid_t pid; // 通过信号注册函数, 忽略子进程死信号 signal(SIGCHLD, SIG_IGN); pid = fork(); if (-1 == pid) { perror("fork err"); return 0; } if (pid > 0) { sleep(100); } if (0 == pid) { ; } return 0; }
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。