std::signal

来自cppreference.com
< cpp‎ | utility‎ | program

 
 
实用工具库
类型的支持 (basic types, RTTI, type traits)
动态内存管理
错误处理
程序实用工具
可变参数函数
日期和时间
函数对象
initializer_list(C++11)
bitset
hash(C++11)
关系运算符
原文:
Relational operators
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
rel_ops::operator!=
rel_ops::operator>
rel_ops::operator<=
rel_ops::operator>=
双和元组
原文:
Pairs and tuples
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
pair
tuple(C++11)
piecewise_construct_t(C++11)
piecewise_construct(C++11)
掉期,远期和移动
原文:
Swap, forward and move
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
swap
forward(C++11)
move(C++11)
move_if_noexcept(C++11)
declval(C++11)
 
程序支持实用程序
程序终止
原文:
Program termination
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
abort
exit
quick_exit(C++11)
_Exit(C++11)
与环境沟通
原文:
Communicating with the environment
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
信号
原文:
Signals
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
信号类型
原文:
Signal types
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
SIGABRT
SIGFPE
SIGILL
SIGINT
SIGSEGV
SIGTERM
非本地跳跃
原文:
Non-local jumps
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
setjmp
longjmp
类型
原文:
Types
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
jmp_buf
 
在头文件 <csignal> 中定义
void (*signal( int sig, void (*handler) (int))) (int);
设置错误信号sig处理程序。可以设置的默认处理,使信号处理程序会发生,信号被忽略,或一个用户定义的函数被调用.
原文:
Sets the error handler for signal sig. The signal handler can be set so that default handling will occur, signal is ignored, or an user-defined function is called.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
当信号处理程序设置为一个函数和一个信号出现,它实现定义是否std::signal(sig, SIG_DFL)都将立即执行的信号处理程序的开始之前。此外,实施可以防止一些实现定义的一组信号的信号处理程序运行时,发生.
原文:
When signal handler is set to a function and a signal occurs, it is implementation defined whether std::signal(sig, SIG_DFL) will be executed immediately before the start of signal handler. Also, the implementation can prevent some implementation-defined set of signals from occurring while the signal handler runs.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
对于一些信号,,实现可致电std::signal(sig, SIG_IGN)在启动的程序。对于剩下的实现必须调用std::signal(sig, SIG_DFL).
原文:
For some of the signals, the implementation may call std::signal(sig, SIG_IGN) at the startup of the program. For the rest, the implementation must call std::signal(sig, SIG_DFL).
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
如果用户定义的函数返回时,处理SIGFPESIGILLSIGSEGV或任何其他执行自定义的信号,指定一个计算异常的行为是不确定的。在大多数实现中,该程序将终止.
原文:
If the user defined function returns when handling SIGFPE, SIGILL, SIGSEGV or any other implementation-defined signal specifying a computational exception, the behavior is undefined. In most implementations the program terminates.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
std::abortstd::raise的结果,如果信号处理函数被调用的行为是不确定的,如果不遵守下列条件之一的:
原文:
If the signal handler is called as a result of std::abort or std::raise, the behavior is undefined if any of the following requirements is not followed:
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
  • 信号处理程序调用std::raise.
    原文:
    the signal handler calls std::raise.
    这段文字是通过 Google Translate 自动翻译生成的。
    您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
  • 信号处理程序是指静态存储持续时间的对象,这是不声明为volatile std::sig_atomic_t.
    原文:
    the signal handler refers to an object of static storage duration which is not declared as volatile std::sig_atomic_t.
    这段文字是通过 Google Translate 自动翻译生成的。
    您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
  • 信号处理程序调用任何函数内的标准库,除了std::abortstd::_Exit,或std::signal的第一个参数的信号处理.
    原文:
    the signal handler calls any function within the standard library, except std::abort, std::_Exit, or std::signal with the first argument not being the number of the signal currently handled.
    这段文字是通过 Google Translate 自动翻译生成的。
    您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

目录

[编辑] 参数

sig -
信号设置信号处理程序。它可以是一个实现定义的值或以下值之一:
定义信号类型
原文:
defines signal types
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(常量宏) [edit]
原文:
the signal to set the signal handler to. It can be an implementation-defined value or one of the following values:
定义信号类型
原文:
defines signal types
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(常量宏) [edit]
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
handler -
信号处理程序。这必须是下列之一:
  • SIG_DFL宏。信号处理程序设置为系统默认的信号处理程序。
  • SIG_IGN宏。的信号被忽略。
  • 指向函数的指针。函数签名必须是等价于下面的:
void fun(int sig);
原文:
the signal handler. This must be one of the following:
  • SIG_DFL macro. The signal handler is set to default signal handler.
  • SIG_IGN macro. The signal is ignored.
  • pointer to a function. The signature of the function must be equivalent to the following:
void fun(int sig);
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 返回值

以前的信号处理程序,可以禁用一些实现成功或失败(设置信号处理程序SIG_ERR).
原文:
Previous signal handler on success or SIG_ERR on failure (setting a signal handler can be disabled on some implementations).
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 为例

[编辑] 另请参阅

运行特定信号的信号处理程序
原文:
runs the signal handler for particular signal
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(函数) [edit]
C documentation for signal