diff options
author | Edward Z. Yang <ezyang@mit.edu> | 2013-07-16 22:08:51 -0700 |
---|---|---|
committer | Edward Z. Yang <ezyang@mit.edu> | 2013-07-16 22:08:51 -0700 |
commit | 2f99cdb9f9e561f29d726fea90a5a98de7499a2d (patch) | |
tree | 9d153ed250fbe47ce6ea01ee7ea3a830a9063ce0 | |
parent | 193e0ee9aa8705dcc0020eaaf6bfb6714db6f9ca (diff) | |
download | haskell-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.xml | 16 |
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> |