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

一个关于apue里的问题

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

    本文导语:     最近在看unix编程,看到了信号这一章,好迷惑。。。。很多都不能理解。比如在下面这段代码中TELL_WAIT()为什么要Block SIGUSR1 and SIGUSR2 呢?如果没有阻塞这两个信号有什么后果呢?望各位路过大神可以解答...

   最近在看unix编程,看到了信号这一章,好迷惑。。。。很多都不能理解。比如在下面这段代码中TELL_WAIT()为什么要Block SIGUSR1 and SIGUSR2 呢?如果没有阻塞这两个信号有什么后果呢?望各位路过大神可以解答一下我的疑惑。万分感激    

#include "apue.h"

static volatile sig_atomic_t sigflag; /* set nonzero by sig handler */
static sigset_t newmask, oldmask, zeromask;

static void
sig_usr(int signo)      /* one signal handler for SIGUSR1 and SIGUSR2 */
{
        sigflag = 1;
}

void
TELL_WAIT(void)
{
        if (signal(SIGUSR1, sig_usr) == SIG_ERR)
                err_sys("signal(SIGUSR1) error");
        if (signal(SIGUSR2, sig_usr) == SIG_ERR)
                err_sys("signal(SIGUSR2) error");
        sigemptyset(&zeromask);
        sigemptyset(&newmask);
        sigaddset(&newmask, SIGUSR1);
        sigaddset(&newmask, SIGUSR2);
/*                                                    
         * Block SIGUSR1 and SIGUSR2, and save current signal mask.
         */                                                   
        if (sigprocmask(SIG_BLOCK, &newmask, &oldmask) 

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 下载了APUE源码,怎么打不开啊?
  • 文件名为“apue.tar.Z”的文件在UNIX下怎么打开?大家帮帮忙
  • APUE第2版的例2-1的疑问
  • apue书上的概念,读过这本书的请进
  • 刚学完apue,大家给个建议
  • 求apue的课后答案~~~~~~~~~~~~~
  • APUE 看完之后,拿什么练练手?
  • APUE+macro
  • APUE相关章节不容易理解。
  • 关于apue2 中一个例子的提问
  • apue书的的信号函数,看不懂
  • 哪位兄弟在看apue?相互交流一下
  • apue 上的 Figure3.10运行后,输出怎么是空白
  • apue page113
  • 不同缓冲区长度读操作 APUE2e
  • APUE2 10.12小节中所给的Figure 10.14程序是不是错了?
  • APUE 第二版 程序 5-2
  • 问一下《APUE》这本书是否适合linux开发 ?
  • 关于apue上的一段代码
  • apue上讲的 FIFOs


  • 站内导航:


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

    ©2012-2021,