2.9.4. __raise()

此函数发出信号以指示运行时异常。

语法

int __raise(int signal, int type);

其中:

signal

是一个保存信号编号的整数。

type

是一个整数或字符串常数或变量。

用法

此函数调用普通 C 信号机制或缺省信号处理程序。 有关详细信息,另请参阅_ttywrch()

可通过定义以下内容来替换 __raise() 函数:

int __raise(intsignal, inttype)

这样,便可绕过 C 信号机制及其数据消耗信号处理程序向量,但会提供与下面基本相同的接口:

void __default_signal_handler(int signal, int type);

另请参阅ARM C 库中的线程安全性

返回值

__raise() 返回值的情形可能有以下三种:

无返回值

处理程序执行较长的跳转或重新启动。

0

信号已被处理。

非零值

调用代码必须将该返回值传递给退出代码。 如果 __raise() 返回非零返回代码 rc,缺省库实现将调用 _sys_exit(rc)

Copyright © 2007 ARM Limited. All rights reserved. ARM DUI 0349AC
Non-Confidential