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

关于signal函数使用的问题

    来源: 互联网  发布时间:2016-02-25

    本文导语:  代码如下: #include #include #include #include  #include  int main() {         int p1, p2,i,sonpid;         p1 = 3;         p2 = 8;         sonpid = fork();         if(sonpid == 0)         {              ...

代码如下:
#include
#include
#include
#include 
#include 
int main()
{
        int p1, p2,i,sonpid;
        p1 = 3;
        p2 = 8;
        sonpid = fork();
        if(sonpid == 0)
        {

                signal(SIGUSR1,killson);
                while(loop == 0)
                {
                        printf("p1 = %dn", p1);
                }
        }
        signal(SIGUSR1,sigkill);
        while(loop == 0)
        {
                printf("p2 = [%d]n", p2);
                kill( sonpid , SIGUSR1 );
                break;
        }
        return 0;
}
void killson()
{
        loop = 1;
        printf("111111111n");
}
void sigkill()
{
        loop = 1;
        printf("222222222n");
        alarm
}


输出结果如下:
3
3
3
[8]
3
3
3
[8]
3
3
3
1111 3
怎么会是这样的结果,那位高人解释一下啊。小弟先谢谢了!

|
signal()
第二个参数取地址。

|
loop在哪定义的?

|
loop是全局变量

两个函数还要声明


|
 signal(SIGUSR1,killson); 简单的说就是把这个信号和函数关联起来,SIGUSR1信号到来时,指向killson函数.
对此程序来说,你只要明白一点:sonpid = fork(); 从此处开始后即是两个进程了,唯一的区别就是在两个进程内sonpid的值不同而已.你按这流程想一遍就通了.



    
 
 

您可能感兴趣的文章:

  • 请教signal函数的用法!
  • signal函数定义该怎么理解?
  • 请问有没头函数<pthread.h>和<signal.h>里的函数的详细功能介绍?和使用方法???
  • 关于signal函数
  • 关于系统信号处理函数signal()的疑问.
  • signal的处理函数问题
  • 关于signal函数的问题
  • signal函数的定义问题?搞不懂.
  • signal函数使用出问题?
  • signal 函数请教
  • 关于signal函数的问题,大家帮我看看
  • 关于linux下的signal函数的问题
  • 在signal指定的处理函数中如何传进去一个值?
  • 向各位求助:关于signal函数
  • REDHAT LINUX 9中如何使用signal这个函数进行中断通信?
  • 谁能给我解释一下SIGNAL这个函数呀?
  • signal处理函数中的文件操作问题
  • 请问:signal(), sigaction()函数会不会使自已所有的进程挂起啊,(这样就等接收各种信号,进行一些处理工作啊)
  • 谁给解释下这个signal函数
  • linux中信号signal函数实例遇到的疑问
  • 关于Linux驱动中signal的使用
  • 在类中使用signal编译不通过
  • 关于signal与setjmp的配合使用时遇到的一个问题
  • 教你如何在Django 1.6中正确使用 Signal
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • signal handler 问题
  • PPP问题fatal signal 11
  • signal传参问题
  • C/C++语言问题:(void) signal(SIGPIPE, pstat); 是什么意思?
  • alarm() 和 signal()的问题
  • g_signal_connect的问题
  • 留下这样一条信息:user signal 1 ,有高手知道这一般是什么出问题吗?
  • void(*signal(int signo,void(*func)(int)))(int)又有问题了
  • linux 2.4.0中do_signal参数传递问题,请大牛来解答
  • unix 中有关 signal 的问题
  • 请教个问题:Process #4764 received signal 11, suspending 是什么意思?
  • linux c 编程,signal函数的一个问题
  • alarm() signal()的问题??
  • 自定义信号的signal用法问题
  • linux fork 和signal 的问题
  • 刚接触linux环境编程,关于signal()和pause()的问题,请教高手
  • 信号函数signal的问题
  • 一个signal的问题,gdb调试都无反应了
  • signal问题
  • signal()函数捕捉信号问题,有程序
  • java命名空间java.util.concurrent.locks接口condition的类成员方法: signal定义及介绍
  • signal 7和signal 11
  • 关于signal信号
  • 关于signal返回值是什么?
  • pending signal
  • about "signal"
  • 有关signal handler,请教!
  • signal的疑惑
  • 关于signal ()
  • signal和sigaction区别
  • ***************unix 系统中,信号量(signal)被屏蔽了,怎么开(是在命令行超作,不是在程序中)


  • 站内导航:


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

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

    浙ICP备11055608号-3