at_quick_exit
at_quick_exit
在头文件 | | |
---|---|---|
int at_quick_exit(void(* func)(void)); | | (自C11以来) |
注册由func指向的函数,在快速程序终止时(通过quick_exit)调用。
从多个线程调用该函数不会导致数据竞争。 实施应支持至少32项功能的注册。
参数
func | - | 指向正常程序终止时要调用的函数的指针 |
---|
返回值
如果注册成功,则返回0;否则为非零值。
例
#include <stdlib.h>
#include <stdio.h>
void f1(void)
{
puts("pushed first"
fflush(stdout
}
void f2(void)
{
puts("pushed second"
}
int main(void)
{
at_quick_exit(f1
at_quick_exit(f2
quick_exit(0
}
输出:
pushed second
pushed first
参考
- C11标准(ISO / IEC 9899:2011):
扩展内容
atexit | 注册要在exit()调用(函数)上调用的函数 |
---|
|用于at_quick_exit的 C ++文档|