一、几种同步关系:
1. 线程内部的数据关系:
1.1 sequenced before:
这是表达式与表达式之间的一种配对的不对称的关系,仅用于同一个线程内。实际执行顺序不能破坏语句间sequenced before的关系。([1]的1.9.13)
1.2 carries a dependency to:
仅用于同一个线程内。当某个表达式A中的某个值被用作另一个表达式B的操作数,即A carries a dependency to B(排除一些特殊情况,如kill_dependency、逻辑与逻辑或条件表达式的做操作数、逗号表达式)或者通过sequenced before关系和carries a dependency to可以推导出的表达式之间的关系。([1]的1.10.9)