#if !defined(THREADED_RTS)
void
-startSignalHandlers(void)
+startSignalHandlers(Capability *cap)
{
blockUserSignals();
- ASSERT_LOCK_HELD(&sched_mutex);
-
while (next_pending_handler != pending_handler_buf) {
next_pending_handler--;
- scheduleThread (
- &MainCapability,
- createIOThread(&MainCapability,
+ scheduleThread (cap,
+ createIOThread(cap,
RtsFlags.GcFlags.initialStkSize,
(StgClosure *) *next_pending_handler));
}