a174787252 发表于 2015-08-27 18:49

kill()和signal()函数理解

kill()函数只是发送信号怎么感觉这个名字和作用很难产生联系呢按照名字的理解是杀死呀!!!
signal()函数没有阻塞这一点也让我很难理解啊!!
大家说说理解被 !!

ta小ta 发表于 2015-09-05 18:11

回复 1# a174787252


    signal函数是否阻塞与你所使用的系统有是关系的。多重同样信号的忽略,递归,阻塞队列都是由系统本身的实现 定义的,现在的系统一般都支持信号阻塞的,如centos,kill就是发射信号给同UID的进程的。这个没必要纠结。。

BsiIce 发表于 2015-09-07 12:55

我想告诉lz,man 2 signal中有如下内容:
Avoid its use: use sigaction(2) instead.

a174787252 发表于 2015-09-09 09:22

感谢~虽然我也是这么认为,但是有些场景,在能确定好有把握环境变量及各个进程之间的关系下使用kill还是比signalaction方便的~感觉原理是想通的



回复 3# BsiIce


   

ferrerox 发表于 2015-09-10 20:55

本帖最后由 ferrerox 于 2015-09-10 20:59 编辑

有那么难理解吗?发送信号的用处之一就是kill;我感觉用kill代替sendsignal有一种很直观的感觉
页: [1]
查看完整版本: kill()和signal()函数理解