[cpp-threads] modes

Doug Lea dl at cs.oswego.edu
Sat May 7 19:54:04 BST 2005


> You seem to be saying that:
> 
> - programs that have no data races are sequentially consistent;

We define what is a race. For example reads and writes of
mutable-volatiles in different threads are not races. And so
on across different cases. This is one reason why having
lots of modes is a big headache.

(In the JMM there were basically only two modes --
"synchronization actions" vs all others, crossed by
by read/write. It was still complicated because
some aspects need to distinguish, e.g.,  locks vs volatile-reads vs
Thread.start. Plus "final" qualifiers and other things.)


-Doug




More information about the cpp-threads mailing list