Liunx编程之信号signal

本文详细阐述了Unix操作系统在基础运维方面的关键概念和技术,包括监控、自动化、日志分析等核心领域,帮助读者深入了解如何有效管理和维护Unix系统。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

kill函数

函数原型:

int   kill(pid_t pid,  int signo  )

pid>0:向进程pid发送signo信号

pid == 0: 。。。。。。。。。。。

pid  < 0 : 向进程组ID为pid绝对值的进程发送signo信号

pid == -1:。。。。。。。。。。。。


sigprocmask函数

函数原型:

int  sigprocmask(int   how,  const     sigset_t *    set,    sigset_t*   oset    )

描述:根据how取值不同,设置进程的屏蔽位。设置屏蔽位后,相应的信号将被阻塞,不再执行相应的信号处理函数直到信号屏蔽位被撤销。

how的取值:

SIG_BLOCK:设置相应屏蔽位

SIG_UNBLOCK: 取消相应屏蔽位

SIG_SETMASK:  用set替换原屏蔽字

原先的屏蔽字将保存于oset中(若oset非空)。


sigpending函数

函数原型:

int  sigpending( sigset_t*    set )

函数描述:被阻塞的信号集(包含了所有为递交的信号)

结果存于set中


sigaction函数

signal函数的替代品


sigsetjmp与siglongjmp

int sigsetjmp(sigjmp_buf  env,   int   savemask)

int  siglongjmp(sigjmp_buf   env,    int   val)


sigsuspend函数

函数原型:

int  sigsuspend( const   sigset_t*   sigmask)

函数描述:用一个原子操作将进程屏蔽字设置为sigmask并挂起进程


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值