monifu.concurrent.atomic

padded

package padded

Atomic classes that are cache-padded for reducing cache contention, until JEP 142 and @Contended happens. See:

http://mail.openjdk.java.net/pipermail/hotspot-dev/2012-November/007309.html

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. padded
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. trait Atomic[T] extends atomic.Atomic[T]

  2. final class AtomicAny[T] extends Atomic[T] with BlockableAtomic[T]

  3. final class AtomicBoolean extends Atomic[Boolean] with BlockableAtomic[Boolean]

  4. final class AtomicByte extends Atomic[Byte] with AtomicNumber[Byte] with BlockableAtomic[Byte]

  5. final class AtomicChar extends Atomic[Char] with AtomicNumber[Char] with BlockableAtomic[Char]

  6. final class AtomicDouble extends Atomic[Double] with AtomicNumber[Double] with BlockableAtomic[Double]

  7. final class AtomicFloat extends Atomic[Float] with AtomicNumber[Float] with BlockableAtomic[Float]

  8. final class AtomicInt extends Atomic[Int] with AtomicNumber[Int] with BlockableAtomic[Int]

  9. final class AtomicLong extends Atomic[Long] with AtomicNumber[Long] with BlockableAtomic[Long]

  10. final class AtomicNumberAny[T] extends Atomic[T] with AtomicNumber[T] with BlockableAtomic[T]

  11. final class AtomicShort extends Atomic[Short] with AtomicNumber[Short] with BlockableAtomic[Short]

  12. trait PaddedAtomicBuilder[T, R <: Atomic[T]] extends AtomicBuilder[T, R]

Value Members

  1. object Atomic

  2. object AtomicAny

  3. object AtomicBoolean

  4. object AtomicByte

  5. object AtomicChar

  6. object AtomicDouble

  7. object AtomicFloat

  8. object AtomicInt

  9. object AtomicLong

  10. object AtomicNumberAny

  11. object AtomicShort

  12. object PaddedAtomicBuilder extends Level3

  13. def apply[T, R <: Atomic[T]](initialValue: T)(implicit builder: PaddedAtomicBuilder[T, R]): R

    Constructs an Atomic[T] reference.

    Constructs an Atomic[T] reference. Based on the initialValue, it will return the best, most specific type. E.g. you give it a number, it will return something inheriting from AtomicNumber[T]. That's why it takes an AtomicBuilder[T, R] as an implicit parameter - but worry not about such details as it just works.

    initialValue

    is the initial value with which to initialize the Atomic reference

    builder

    is the builder that helps us to build the best reference possible, based on our initialValue

Inherited from AnyRef

Inherited from Any

Ungrouped