当前位置:  技术问答>linux和unix

linux信号与进程问题求解答

    来源: 互联网  发布时间:2017-02-05

    本文导语:  #include  #include  #include  #include  #include  #include  void fun_sig(int sig) {         int stat_val;         pid_t pid,pidchild;         pid = fork();         if(pid == 0){                 printf("1...n");      ...

#include 
#include 
#include 
#include 
#include 
#include 

void fun_sig(int sig)
{
        int stat_val;
        pid_t pid,pidchild;

        pid = fork();
        if(pid == 0){
                printf("1...n");
        }
        else{
                pidchild = wait(&stat_val);
                printf("2...n");
        }
}

int main()
{
        signal(SIGALRM, fun_sig);
        pause();
        return 0;
}


假设此文件名为signal.c,
运行:./signal&
运行:killall -SIGALRM signal
则可以输出:
1...
2...


================================================================================

现问题为,我把在main函数中将signal设置为一个死循环,运行在后台,我如果将main函数写成如下:

int main()
{
        while(1){
                signal(SIGALRM, fun_sig);
                pause();
        }
        return 0;
}

则同样用上面的方式运行的话。
结果:
1...
但是一直输出不了2...


求各位大侠赐教!!!!

|
刚测试了一下,
pid = fork();
  if(pid == 0){
  printf("1...n");
}
里面的Printf后面需要跟一个exit(0);返回子进程的退出状态。否则父进程会在wait那里阻塞。

    
 
 

您可能感兴趣的文章:

  • linux僵尸(zombie)进程介绍及清除
  • 高手请教!linux怎样通过pid获取进程信息,如:进程名、进程状态等?
  • linux下进程占用内存空间详解
  • linux命令如何实现重启父进程而不会使其子进程退出
  • Linux进程的内核栈和用户栈概念,相互关系及切换过程
  • Linux中最多同时可以开多少个进程,一个进程可以开多少个线程?
  • linux下进程间通信:共享内存原理及具体用法举例(基于c/c++语言)
  • Linux守护进程 的子进程 终端处理
  • Linux内核进程与应用进程的通信方式有哪些?
  • 在linux,如何用共享内存来实现进程间的通讯?(这些进程没有父子关系)
  • linux下system函数调用shell命令后,怎样让主进程不等子进程返回,接着执行(在线)?
  • linux进程(线程)运行过程中如何获取本进程当前的内存使用状况,统计信息?
  • 如何linux下监控进程及其子进程占用资源?
  • linux下的进程如何访问另外一个进程建立的mutex?
  • linux中用killall命令杀死进程的时候会释放掉该进程所占有的内存吗?
  • linux内核高手进!关于调用__fork()时0号进程的子进程才能与父进程共享PID的困惑
  • 请教:在Linux下怎么样检测一个进程是否是僵尸进程??
  • 请问linux进程的哪些信息保存在内核里?哪些信息又保存在进程空间里?谢谢
  • Linux下请教一个父进程杀死子进程的问题.
  • 怎么查看Linux中所运行的进程,并且知道哪些是停止响应的,用什么命令可以杀掉停止响应的进程?
  • 【求助】linux/Unix下创建子进程,向父进程发送信号,子进程也能收到改信号,此时如何让子进程不收到信号
  • 学习linux的新手问:linux进程信号掩码以及信号阻塞与信号未决怎么理解?
  • linux 中信号量的使用 当信号初始化的时候设置的值大于1将是如何?
  • Linux下的信号忽略和信号阻塞是什么意思
  • 请高手指教 linux 信号处理问题
  • linux 信号中断
  • linux 信号 按什么键能发SIGCONT 信号??
  • linux的信号处理函数中如何访问共享资源
  • linux中 关于 进程和信号的问题
  • 如何使用命令行删除Linux下的POSIX有名信号灯
  • linux 下多线程 每个线程能否使用alarm来处理,信号是否会乱呢?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 虚拟机里linux系统下输入l,k,m三个字母不能正常显示,求解答
  • Linux创建进程的问题,请高手帮忙解答一下?
  • linux 中 困惑的地方,求解答。
  • linux下的mib读取问题?大虾帮解答下
  • linux 毕业设计求解答
  • Linux下CVS仓库的问题?菜鸟在线急等人来解答??
  • SSH 无法登陆LINUX,什么问题?帮忙解答下啊
  • 安装linux~~~~有点棘手,请给解答
  • 请高手解答linux无法启动的问题
  • 嵌入式Linux使用外挂Vsftpd不能正常使用, 请高手解答,谢谢。
  • 几个linux问题,求高手解答
  • linux下的swap分区与虚拟内存有什么关系,请高手解答
  • linux 下安装FTP 问题,求解答
  • 用虚拟机安装红旗Linux6.0出现的问题,希望高手解答。
  • 小妹请教一下 linux的网卡 问题!望解答!
  • linux 几个问题 求解答
  • linux qt4环境下,界面显示不了图片,往高手解答
  • 如何给装好的linux 进行分区,在线等。解答后马上给分
  • 初学linux命令时 遇到的一个小问题, 麻烦各位进来帮我解答下。。。。。
  • --Raid绝对难题,请linux高手解答--
  • linux c/c++ IP字符串转换成可比较大小的数字
  • 在win分区上安装linux和独立分区安装linux有什么区别?可以同时安装吗?(两个linux系统)
  • linux哪个版本好?linux操作系统版本详细介绍及选择方案推荐
  • 在虚拟机上安装的linux上,能像真的linux系统一样开发linux程序么?
  • secureCRT下Linux终端汉字乱码解决方法
  • 我重装window后,把linux的引导区覆盖了,进不了linux怎么办?急啊,望热心的人帮助 (现在有linux的盘)
  • Linux c字符串中不可打印字符转换成16进制
  • 安装vmware软件,不用再安装linux系统,就可以模拟linux系统了,然后可以在其上学习一下LINUX下的基本操作 了?
  • Linux常用命令介绍:更改所属用户群组或档案属性
  • 红旗Linux主机可以通过127.0.0.1访问,但如何是连网的Win2000机器通过Linux的IP去访问Linux
  • linux命令大全详细分类介绍及常用linux命令文档手册下载


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3