[cpp-threads] High-level concurrency issues

Alexander Terekhov alexander.terekhov at gmail.com
Thu Oct 20 13:34:57 BST 2005


On 10/18/05, jseigh_cp00 at xemaps.com <jseigh_cp00 at xemaps.com> wrote:
[...]
> You'd have to define thread-safe.  Immutable doesn't mean the instance
> can't be deleted
> so, for  example, refcounted immutable strings would need a release
> memory barrier when

For strong count (vs weak count), it would need sink-load barrier (WRT
preceding loads) for decrement to nonzero, and hoist-store barrier (WRT
dependent subsequent stores) for decrement to zero. The later one is
implied on all existing hardware that I know of, and IIUC Hans Boehm
wants to make it implied under upcoming C/C++ memory model as well.

> dropping the string reference for architectures which allow stores to
> pass loads.

regards,
alexander.



More information about the cpp-threads mailing list