linux信号使用,linux信号使用注意事项

1.不要在信号处理函数中处理复杂的事情

2.信号处理函数中不能有互斥锁会造成死锁,可以用信号量替代

3.信号是置位方式实现,多次发送相同的信号可能只会收到一次

4.子进程具有继承父类信号屏蔽,不能在信号处理函数中启动自身

查看进程pcb(process control block)

/proc//status 文件更直观地查看到指定进程的信息屏蔽情况

cat /proc/21517/status

SIGUSR1=16=0x8000

SIGUSR2=17=0x10000

0x18000

SigBlk: 00000000000000000000000080018000

SigQ:   0/459

SigPnd: 00000000000000000000000000000000

ShdPnd: 00000000000000000000000000000000

SigBlk: 00000000000000000000000080000000

SigIgn: 00000000000000000000000000001000

SigCgt: 00000000000000000000000380018000

CapInh: 0000000000000000

SigPnd: 00000000000000000000000000000000

ShdPnd: 00000000000000000000000000000000

SigBlk: 00000000000000000000000080018000

SigIgn: 00000000000000000000000000001000

SigCgt: 00000000000000000000000380018000

SigPnd | The bitmap of pending signals

SigBlk | The bitmap of blocked signals

SigIgn | The bitmap of ignored signals

SigCgt | The bitmap of catched signals

Linux 信号以及开发中常见信号错误

https://blog.csdn.net/u010674648/article/details/78848909?utm_medium=distribute.wap_relevant.none-task-blog-title-4

Linux信号丢失问题分析

https://blog.csdn.net/gaoxuelin/article/details/9701147?utm_source=blogxgwz3

Linux信号透彻分析与理解

https://blog.csdn.net/dyzhen/article/details/85322111

信号的原理和利用--实现sleep函数

https://blog.csdn.net/stay_the_course/article/details/72902501

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值