summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEdward Z. Yang <ezyang@mit.edu>2013-07-16 22:08:51 -0700
committerEdward Z. Yang <ezyang@mit.edu>2013-07-16 22:08:51 -0700
commit2f99cdb9f9e561f29d726fea90a5a98de7499a2d (patch)
tree9d153ed250fbe47ce6ea01ee7ea3a830a9063ce0
parent193e0ee9aa8705dcc0020eaaf6bfb6714db6f9ca (diff)
downloadhaskell-2f99cdb9f9e561f29d726fea90a5a98de7499a2d.tar.gz
Update docs for readMVar/tryReadMVar.
Signed-off-by: Edward Z. Yang <ezyang@mit.edu>
-rw-r--r--docs/users_guide/7.8.1-notes.xml16
1 files changed, 10 insertions, 6 deletions
diff --git a/docs/users_guide/7.8.1-notes.xml b/docs/users_guide/7.8.1-notes.xml
index 8e7685ef58..6c829c8e0a 100644
--- a/docs/users_guide/7.8.1-notes.xml
+++ b/docs/users_guide/7.8.1-notes.xml
@@ -279,12 +279,16 @@
</listitem>
<listitem>
<para>
- <literal>Control.Concurrent.MVar</literal> has two
- new functions, <literal>atomicReadMVar</literal> and
- <literal>tryAtomicReadMVar</literal>, which
- implement <literal>readMVar</literal> that cannot be
- affected by other threads. (XXXX we may change the implementation
- of <literal>readMVar</literal> to use this.)
+ <literal>Control.Concurrent.MVar</literal> has a new
+ implementation of <literal>readMVar</literal>, which
+ fixes a long-standing bug where
+ <literal>readMVar</literal> is only atomic if there
+ are no other threads running
+ <literal>putMVar</literal>.
+ <literal>readMVar</literal> now is atomic, and is
+ guaranteed to return the value from the first
+ <literal>putMVar</literal>. There is also a new <literal>tryReadMVar</literal>
+ which is a non-blocking version.
</para>
</listitem>
</itemizedlist>