信号

信号

     系统预先定义好的某些特定的事,事件可以被产生,也可以被接收,产生和接收事件的主体都是进程。
     /usr/include/bits/signum.h
1、收到信号后,进程的行为如何设置。
信号的响应方式:
     忽略    SIG_IGN
     默认    SIG_DFL
     自定义   用户函数 void signal_fun( int sign );
修改信号的响应方式
typedef void (*fun)(int);
Fun signal( int signum, Fun fun );
SIGKILL 不允许修改其响应方式
     进程接收到信号后,main 函数中的执行体会被暂停,先调用信号处理函数,执行完后,main 函数的执行体会被恢复接着执行。

信号的发送

int kill(pid_t pid, int sigtype)
参数:
     pid:将信号发送给那个进程
     sigtype:发送信号的类型
返回值
     pid > 0 指定接收信号进程的 PID
     pid == 0 将信号发送给当前进程组中所有的进程
     pid == -1 将信号发送给系统上所有的进程(有权限发送)
     pid < -1 将信号发送给进程组 ID 为 -pid 组内所有的进程

同步执行:
     一个进程或线程的执行需要依赖其他的进程或线程执行的条件。
异步执行:
     两个以上的进程或线程执行互不影响,同时向下执行,当某个时刻,一个进程或线程会通过系统机制通知其他进程或线程。
阻塞:
     函数调用,只要条件不满足,则函数不成立
非阻塞:
     函数调用,无论任何情况,函数都会立即返回

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值