diff options
Diffstat (limited to 'rts/sm/GC.c')
-rw-r--r-- | rts/sm/GC.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/rts/sm/GC.c b/rts/sm/GC.c index 74880064e4..88b11aae88 100644 --- a/rts/sm/GC.c +++ b/rts/sm/GC.c @@ -937,6 +937,23 @@ initGcThreads (void) } } +void +freeGcThreads (void) +{ + if (gc_threads != NULL) { +#if defined(THREADED_RTS) + nat i; + for (i = 0; i < RtsFlags.ParFlags.nNodes; i++) { + stgFree (gc_threads[i]); + } + stgFree (gc_threads); +#else + stgFree (gc_threads); +#endif + gc_threads = NULL; + } +} + /* ---------------------------------------------------------------------------- Start GC threads ------------------------------------------------------------------------- */ |