- csignal[meta header]
- std[meta namespace]
- function[meta id-type]
namespace std {
int raise(int sig);
}現在のプログラムにシグナルを送信する。
sig: 送信するシグナル番号
正常に終了した場合は0を返す。 それ以外の場合は非ゼロの値を返す。
signal関数などにより、シグナルハンドラが呼び出された場合、それが終了するまでこの関数は戻らない。
#include <iostream>
#include <csignal>
volatile std::sig_atomic_t got_signal = 0;
void signal_handler(int signum) {
got_signal = 1;
}
int main (){
std::signal(SIGABRT, signal_handler);
std::raise(SIGABRT);
if (got_signal)
std::cout << "SIGABRT" << std::endl;
return 0;
}- std::raise[color ff0000]
SIGABRT