RTS tidyup sweep, first phase
[ghc.git] / rts / Weak.h
1 /* -----------------------------------------------------------------------------
2 *
3 * (c) The GHC Team, 1998-2005
4 *
5 * Weak pointers / finalizers
6 *
7 * ---------------------------------------------------------------------------*/
8
9 #ifndef WEAK_H
10 #define WEAK_H
11
12 #include "Capability.h"
13
14 extern rtsBool running_finalizers;
15 extern StgWeak * weak_ptr_list;
16
17 void runCFinalizer(void *fn, void *ptr, void *env, StgWord flag);
18 void runAllCFinalizers(StgWeak *w);
19 void scheduleFinalizers(Capability *cap, StgWeak *w);
20 void markWeakList(void);
21
22 #endif /* WEAK_H */
23