Module signal

Module signal 

Source
Expand description

信号相关的系统调用实现

Functions§

kill
向任何进程组或进程发送任何信号。 如果 pid 为正数,则向 pid 指定的进程发送信号 sig。 如果 pid 等于 0,则向调用进程所在进程组中的每个进程发送信号 sig。 如果 pid 等于 -1,则向调用进程有权发送信号的每个进程发送信号 sig,但进程 1(init)除外, 如果 pid 小于 -1,则向进程组 ID 为 -pid 的每个进程发送信号。 如果 sig 为 0,则不发送信号,但仍会执行存在性和权限检查;
rt_sigaction
更改指定信号的处理动作
rt_sigpending
获取当前任务的待处理信号集合, 包括私有和共享的信号集合
rt_sigprocmask
修改当前任务的信号屏蔽字
rt_sigreturn
撤销之前为了调用信号处理程序而进行的所有操作 利用先前保存在用户空间栈上的信息, 恢复进程的信号掩码,切换栈,并恢复进程的上下文(处理器标志和寄存器, 包括栈指针和指令指针),以便进程从被信号中断的位置恢复执行。
rt_sigsuspend
实现实时信号挂起 它将三个独立的操作封装成一个不可分割的原子操作:
rt_sigtimedwait
实现实时信号等待
signal_stack
设置或获取备用信号处理栈的信息
tgkill
向线程组 tgid 中线程 ID 为 tid 的线程发送信号 sig。
tkill
向线程组 tgid 中线程 ID 为 tid 的线程发送信号 sig. 注意: 如果线程终止且其线程 ID 被回收,则向错误的线程发送信号。避免使用此系统调用。
wait_for_signal 🔒
在任务中等待指定信号的到来