die :: ThreadId -> IO ()
die mainthread = do
  info' $ "Interrupted; performing cleanup and exiting..."
  delaySecs 2
  clearLogHandlers
  throwTo mainthread ExitSuccess

-- | Execute a pipeline according to schedule.
die :: ThreadId -> IO ()
die mainthread = do
  info' $ "Interrupted; performing cleanup and exiting..."
  delaySecs 2
  clearLogHandlers
  throwTo mainthread ExitSuccess

-- | Execute a pipeline according to schedule.
die mainthread = do
  info' $ "Interrupted; performing cleanup and exiting..."
  delaySecs 2
  clearLogHandlers
  throwTo mainthread ExitSuccess

-- | Execute a pipeline according to schedule.