
#include<stdio.h>
#include<unistd.h>
#include<stdlib.h>
#include<sys/wait.h>
void deal(int s)
{
  int status;
  wait(&status);
  printf("回收中....\n");
  sleep(5);
  printf("回收完毕:%d\n",WEXITSTATUS(status));
}
main()
{
  if(fork()==0)
  {
    printf("子进程\n");
    sleep(10);
    printf("退出\n");
    exit(88);
  }
  
  else 
  {
    signal(17,deal);
    while(1)
    {
      printf("父进程!\n");
      sleep(1);
    }
    
  }
}


