atexit函数:注册终止处理程序

功能:注册终止处理回调函数

注:最多可注册32个终止处理回调函数,回调函数的调用和注册次序相反。


原型:

int atexit(void (*function)(void))

#include <stdlib.h>

示例:

#include <iostream>
#include <stdlib.h>

using namespace std;

void on_exit1(void)
{
	cout<<__FUNCTION__<<endl;
}

void on_exit2(void)
{
	cout<<__FUNCTION__<<endl;
}

int main(int args, char* argv[])
{
	atexit(on_exit1);
	atexit(on_exit2);
	cout<<__FUNCTION__<<endl;
	
	return 0;
}

运行结果:

atexit函数:注册终止处理程序_第1张图片


可以做一些清除工作在on_exit回调函数中,以防止程序异常退出时有一些资源未清除掉(比如,有些server端进程,莫名其妙断掉后,导致还在占用端口,在on_exit进程退出处理回调函数中做一些这样断掉监听的清理工作)。


(END)

你可能感兴趣的:(atexit函数:注册终止处理程序)