MemoryOrder

Companion:
class
trait Sum
trait Mirror
class Object
trait Matchable
class Any

Type members

Classlikes

case object AcqRel extends MemoryOrder

Acts as both an Acquire and Release operation on its address.

Acts as both an Acquire and Release operation on its address.

case object Acquire extends MemoryOrder

In addition to the guarantees of Monotonic, a synchronizes-with edge may be formed with a release operation.

In addition to the guarantees of Monotonic, a synchronizes-with edge may be formed with a release operation.

case object Monotonic extends MemoryOrder

In addition to the guarantees of Unordered, there is a single total order for modifications by monotonic operations on each address.

In addition to the guarantees of Unordered, there is a single total order for modifications by monotonic operations on each address.

case object Release extends MemoryOrder

In addition to the guarantees of Monotonic, if this operation writes a value which is subsequently read by an acquire operation, it synchronizes-with that operation.

In addition to the guarantees of Monotonic, if this operation writes a value which is subsequently read by an acquire operation, it synchronizes-with that operation.

case object SeqCst extends MemoryOrder

In addition to the guarantees of AcqRel, there is a global total order on all sequentially-consistent operations on all addresses, which is consistent with the happens-before partial order and with the modification orders of all the affected addresses.

In addition to the guarantees of AcqRel, there is a global total order on all sequentially-consistent operations on all addresses, which is consistent with the happens-before partial order and with the modification orders of all the affected addresses.

case object Unordered extends MemoryOrder

The set of values that can be read is governed by the happens-before partial order

The set of values that can be read is governed by the happens-before partial order

Inherited types

type MirroredElemLabels <: Tuple

The names of the product elements

The names of the product elements

Inherited from:
Mirror

The name of the type

The name of the type

Inherited from:
Mirror