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

信号方面的问题请教.请大家指点

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

    本文导语:  我是想让 链接库 在一定条件下给 程序 发一个自己定义的信号的.信号响应函数我需要在 程序里实现.于是我打算做一个传递函数的参数来实现这个过程. 以下代码实现: // ------------lib.cpp #include  typedef void (*fn_t)...

我是想让 链接库 在一定条件下给 程序 发一个自己定义的信号的.信号响应函数我需要在 程序里实现.于是我打算做一个传递函数的参数来实现这个过程.

以下代码实现:
// ------------lib.cpp
#include 

typedef void (*fn_t)(int);

void initlib(fn_t fn)
{
    signal(SIGUSR1,fn);
    raise(SIGUSR1);
}

//----------main.cpp
#include 
#include "lib.cpp"

static void sig_fn(int signo)
{
}

int main(void)
{
    initlib(sig_fn);
    while(1)
        pause();

    return 1;
}

现在单独编译都可以过的去.在link的时候说多次定义 initlib(void (*)(int)) 这是为啥哪?

再请教一下如我这样的要求,一般要怎么设计这个信号哪?

|
/* lib.h */
#ifndef MYSIGLIB_H
#define MYSIGLIB_H

/* type */
typedef void (*fn_t)(int);

/* func dec */
void initlib(fn_t fn);

#endif

/* lib.cpp */
#include "lib.h"

void initlib(fn_t fn)
{
    signal(SIGUSR1, fn);
}

/**********************/

/* main.cpp */
#include 

/* signal handler */
static void sig_fn(int signo)
{
    /* TODO */
}

/* main */
int main()
{
    initlib(sig_fn);
    while (1)
        pause();

    return 0;
}

    
 
 

您可能感兴趣的文章:

  • 请高人指点:在unix下,如何实现二值信号量
  • 为什么进程总是不停的收到SIGTTOU信号,请高手指点
  • 怎么用信号灯控制对共享内存的读写,大家都来指点一下,解决者另开贴给500分
  • 请教:多线程模式下的信号处理问题
  • 请教信号量处理函数signal的问题?
  • 请教 gtk编程,nootbook控件切换标签时信号量处理的问题
  • linux编程中简单的信号处理问题,请教各位,谢谢。
  • 请教一个关于UNIX下信号量的问题
  • 初学,请教一个信号问题,这个方法不理解
  • 请教一段代码的意思,信号和超时的
  • 请教关于Kill向子进程发送信号的问题,子进程如何相应信号,为什么子进程接受不到。
  • [请教内核高手]内核在何处处理接收到的信号
  • 请教一个有关信号的问题
  • 还是不懂,驱动到底如何能同步的发送信号给用户程序,请教高人,谢谢了
  • 小白请教关于Listen、accept、信号处理函数、waitpid的几个问题
  • 请教信号发送程序遇到的一个问题
  • 请教使用sem_unlink删除信号量的问题
  • 请教信号难题
  • 请教关于SIGSEGV信号的问题
  • Linux内核信号量和定时器问题请教:
  • 用信号量同步出错,请教高手。。。
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 求助啊,信号方面的问题
  • 谁能帮我解释一下这个现象?(关于进程控制与信号方面的)
  • 进入信号处理函数,是不是会自动把进入信号加入信号屏蔽字?还有sigpending
  • 学习linux的新手问:linux进程信号掩码以及信号阻塞与信号未决怎么理解?
  • 关于信号量与UNIX信号的疑问
  • 生产者消费者问题为什么不可以共用一个信号量,如果这个信号量可以设置取值固定为0到N,即当信号量取值为N的时候阻塞进程,是否也可以?
  • 当信号量(灯)遇上信号,help!
  • 请问什么时候发出SIGKILL信号、什么时候发出SIGTERM信号?
  • 安全信号和不安全信号的实现机制有什么不同么?
  • 如何确定信号的来源?即如何知道接收到的信号来自于哪一个进程号?
  • 自旋锁和读写自旋锁、信号量和读写信号量分别有什么区别?
  • 关于消息队列信号量信号共享内存等核心编程的问题(求知若渴!!!.....)
  • 可靠信号和不可靠信号的问题
  • semaphore.h sem.c Posix 信号量 System v 信号量
  • 【求助】linux/Unix下创建子进程,向父进程发送信号,子进程也能收到改信号,此时如何让子进程不收到信号
  • 信号可靠还是不可靠,取决与信号本身还是signal()/sigaction()的区别?
  • 信号处理函数里面用CRT函数可能导致"信号触发-处理"死循环吗?
  • 终端被关闭后,bash收到哪些信号,这些信号是怎么来的?
  • 书上说,中断用自旋锁,进程,用信号量,但是,为什么中断不能用信号量?
  • linux 中信号量的使用 当信号初始化的时候设置的值大于1将是如何?
  • 大侠们求指导,电信骨干网光纤信号分流成多个千兆网信号
  • 32号信号和33号信号哪里去拉?


  • 站内导航:


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

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

    浙ICP备11055608号-3