
#4001: Implement an atomic readMVar ----------------------------+---------------------------------------------- Reporter: | Owner: ezyang simonmar | Status: closed Type: task | Milestone: 7.6.2 Priority: low | Version: 6.12.2 Component: Runtime | Keywords: System | Architecture: Unknown/Multiple Resolution: fixed | Difficulty: Moderate (less than a day) Operating System: | Blocked By: Unknown/Multiple | Related Tickets: Type of failure: | None/Unknown | Test Case: | Blocking: | ----------------------------+---------------------------------------------- Comment (by simonmar): Is there any reason not to make `readMVar` use `atomicReadMVar#`, and remove `atomicReadMVar`? In principle it changes the behaviour, because a `readMVar` can currently wake up a blocked `putMVar`, but I've never heard of anyone using `readMVar` like that. The fact that `readMVar` is currently non-atomic has always been an annoyance more than a feature. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/4001#comment:22 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler