Namespaces
Variants

std::raise

从 zh.cppreference.net
 
 
 
 
定义于头文件 <csignal>
int raise( int sig );

向程序发送信号 sig。调用信号处理函数(通过 std::signal() 函数指定)。

如果尚未通过 std::signal() 设置用户定义的信号处理策略,则信号是被忽略还是调用默认处理函数由实现定义。

参数

sig - 要发送的信号。它可以是一个实现定义的值,或以下值之一:
定义信号类型
(宏常量)

返回值

​ 0 ​ 表示成功,非零值表示失败。

示例

#include <csignal>
#include <iostream>
void signal_handler(int signal)
{
    std::cout << "Received signal " << signal << '\n';
}
int main()
{
    // 安装信号处理器
    std::signal(SIGTERM, signal_handler);
    std::cout << "Sending signal " << SIGTERM << '\n';
    std::raise(SIGTERM);
}

可能的输出:

Sending signal 15
Received signal 15

参阅

为特定信号设置信号处理程序
(函数)
C 文档 for raise