STXXL  1.4-dev
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
exithandler.h
Go to the documentation of this file.
1 /***************************************************************************
2  * include/stxxl/bits/common/exithandler.h
3  *
4  * Part of the STXXL. See http://stxxl.sourceforge.net
5  *
6  * Copyright (C) 2009 Andreas Beckmann <[email protected]>
7  *
8  * Distributed under the Boost Software License, Version 1.0.
9  * (See accompanying file LICENSE_1_0.txt or copy at
10  * http://www.boost.org/LICENSE_1_0.txt)
11  **************************************************************************/
12 
13 #ifndef STXXL_COMMON_EXITHANDLER_HEADER
14 #define STXXL_COMMON_EXITHANDLER_HEADER
15 
16 #include <stxxl/bits/namespace.h>
17 
19 
20 // There are several possibilities for the exit handlers. To use the default
21 // implementation (which uses atexit()), nothing special has to be done.
22 //
23 // To work around problems with atexit() being used in a dll you may #define
24 // STXXL_NON_DEFAULT_EXIT_HANDLER at library compilation time. In this case
25 // the library/application should call stxxl::run_exit_handlers() during
26 // shutdown.
27 //
28 // To provide your own exit handler implementation, #define
29 // STXXL_EXTERNAL_EXIT_HANDLER and implement stxxl::register_exit_handler(void
30 // (*)(void)) and stxxl::run_exit_handlers() in your application.
31 
32 int register_exit_handler(void (* function)(void));
33 void run_exit_handlers();
34 
36 
37 #endif // !STXXL_COMMON_EXITHANDLER_HEADER
38 // vim: et:ts=4:sw=4
#define STXXL_BEGIN_NAMESPACE
Definition: namespace.h:16
void run_exit_handlers()
Definition: exithandler.cpp:34
int register_exit_handler(void(*function)(void))
Definition: exithandler.cpp:28
#define STXXL_END_NAMESPACE
Definition: namespace.h:17