X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=rts%2FRtsSignals.h;h=be21765dd699b9a994bc1e4fe957869e71245d8d;hp=e130fb4281ac698e2b6c9b4fb90e958ab783c0a6;hb=890f22ef8eff8dbb5b31fa221dfce65a7b84c202;hpb=dd56e9ab4544e83d27532a8d9058140bfe81825c diff --git a/rts/RtsSignals.h b/rts/RtsSignals.h index e130fb4..be21765 100644 --- a/rts/RtsSignals.h +++ b/rts/RtsSignals.h @@ -6,8 +6,8 @@ * * ---------------------------------------------------------------------------*/ -#ifndef RTS_SIGNALS_H -#define RTS_SIGNALS_H +#ifndef RTSSIGNALS_H +#define RTSSIGNALS_H #if !defined(mingw32_HOST_OS) @@ -17,21 +17,22 @@ #include "win32/ConsoleHandler.h" -#else /* PAR */ +#else #define signals_pending() (rtsFalse) -#endif /* PAR */ - +#endif #if RTS_USER_SIGNALS +#include "BeginPrivate.h" + /* * Function: initUserSignals() * * Initialize the console handling substrate. */ -extern void initUserSignals(void); +void initUserSignals(void); /* * Function: initDefaultHandlers() @@ -39,34 +40,17 @@ extern void initUserSignals(void); * Install any default signal/console handlers. Currently we install a * Ctrl+C handler that shuts down the RTS in an orderly manner. */ -extern void initDefaultHandlers(void); -extern void resetDefaultHandlers(void); - -extern void freeSignalHandlers(void); +void initDefaultHandlers(void); +void resetDefaultHandlers(void); -/* - * Function: blockUserSignals() - * - * Temporarily block the delivery of further console events. Needed to - * avoid race conditions when GCing the queue of outstanding handlers or - * when emptying the queue by running the handlers. - * - */ -extern void blockUserSignals(void); - -/* - * Function: unblockUserSignals() - * - * The inverse of blockUserSignals(); re-enable the deliver of console events. - */ -extern void unblockUserSignals(void); +void freeSignalHandlers(void); /* * Function: awaitUserSignals() * * Wait for the next console event. Currently a NOP (returns immediately.) */ -extern void awaitUserSignals(void); +void awaitUserSignals(void); /* * Function: markSignalHandlers() @@ -74,8 +58,10 @@ extern void awaitUserSignals(void); * Evacuate the handler queue. _Assumes_ that console event delivery * has already been blocked. */ -extern void markSignalHandlers (evac_fn evac, void *user); +void markSignalHandlers (evac_fn evac, void *user); + +#include "EndPrivate.h" #endif /* RTS_USER_SIGNALS */ -#endif /* RTS_SIGNALS_H */ +#endif /* RTSSIGNALS_H */