From 8ff122d2d381fc9b1dd5c16067fba19f89512261 Mon Sep 17 00:00:00 2001 From: Joe Crayne Date: Thu, 28 Jun 2018 16:14:26 -0400 Subject: Kademlia.Search: fork -> forkIO --- src/Control/Concurrent/Lifted/Instrument.hs | 2 +- src/Control/Concurrent/Tasks.hs | 2 +- src/Network/Kademlia/Search.hs | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Control/Concurrent/Lifted/Instrument.hs b/src/Control/Concurrent/Lifted/Instrument.hs index 4aa9268f..91d4c0a4 100644 --- a/src/Control/Concurrent/Lifted/Instrument.hs +++ b/src/Control/Concurrent/Lifted/Instrument.hs @@ -43,7 +43,7 @@ globals = unsafePerformIO $ newMVar $ GlobalState forkIO :: IO () -> IO ThreadId -forkIO = fork +forkIO = GHC.forkIO {-# INLINE forkIO #-} forkOS :: MonadBaseControl IO m => m () -> m ThreadId diff --git a/src/Control/Concurrent/Tasks.hs b/src/Control/Concurrent/Tasks.hs index 287542ee..da2e589e 100644 --- a/src/Control/Concurrent/Tasks.hs +++ b/src/Control/Concurrent/Tasks.hs @@ -20,7 +20,7 @@ withTaskGroup :: String -> Int -> (TaskGroup -> IO ()) -> IO () withTaskGroup glabel numslots action = do tg <- atomically $ newTChan cnt <- atomically $ newTVar 0 - thread <- fork $ do + thread <- forkIO $ do myThreadId >>= flip labelThread glabel fix $ \again -> do (slot, (lbl,task)) <- atomically $ do diff --git a/src/Network/Kademlia/Search.hs b/src/Network/Kademlia/Search.hs index e13e0742..d3aaae28 100644 --- a/src/Network/Kademlia/Search.hs +++ b/src/Network/Kademlia/Search.hs @@ -199,7 +199,7 @@ search :: search sch buckets target result = do let ns = R.kclosest (searchSpace sch) searchK target buckets st <- atomically $ newSearch sch target ns - fork $ searchLoop sch target result st + forkIO $ searchLoop sch target result st return st searchLoop :: ( Ord addr, Ord nid, Ord ni, Show nid, Hashable nid, Hashable ni ) -- cgit v1.2.3