Changes between Version 48 and Version 49 of LightweightConcurrency


Ignore:
Timestamp:
May 18, 2012 10:34:31 PM (2 years ago)
Author:
kc
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • LightweightConcurrency

    v48 v49  
    236236Notice that just like yield and forkIO, takeMVar is scheduler agnostic; the MVar implementation is cleanly separated from the scheduler implementation. Moreover, the same MVar might be shared between threads from different schedulers since they utilize the uniform scheduler interface. Since the scheduler actions are PTM actions, actions from different schedulers can be composed together elegantly and simplifies reasoning about synchronization.  
    237237 
    238 As an aside, the race condition in [http://www.haskell.org/ghc/docs/6.12.2/html/libraries/base-4.2.0.1/Control-Concurrent-MVar.html#v%3AswapMVar `swapMVar :: MVar a -> a -> IO ()`] can easily be eliminated with the help of PTM abstraction. 
     238As an aside, the race condition in [http://www.haskell.org/ghc/docs/6.12.2/html/libraries/base-4.2.0.1/Control-Concurrent-MVar.html#v%3AswapMVar swapMVar] can easily be eliminated with the help of PTM abstraction. 
    239239 
    240240== Capabilities and Tasks ==