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. type Atomic[T] = atomic.Atomic[T]

  2. type AtomicAny[T] = atomic.AtomicAny[T]

  3. type AtomicBoolean = atomic.AtomicBoolean

  4. type AtomicByte = atomic.AtomicByte

  5. type AtomicChar = atomic.AtomicChar

  6. type AtomicDouble = atomic.AtomicDouble

  7. type AtomicFloat = atomic.AtomicFloat

  8. type AtomicInt = atomic.AtomicInt

  9. type AtomicLong = atomic.AtomicLong

  10. type AtomicNumber[T] = atomic.AtomicNumber[T]

  11. type AtomicNumberAny[T] = atomic.AtomicNumberAny[T]

  12. type AtomicShort = atomic.AtomicShort

  13. type BlockableAtomic[T] = atomic.BlockableAtomic[T]

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

Value Members

  1. object Atomic

    Provides a constructor for building cache-line padded Atomic references.

  2. object AtomicAny

    Provides a constructor for building cache-line padded AtomicAny references.

  3. object AtomicBoolean

    Provides a constructor for building cache-line padded AtomicBoolean references.

  4. object AtomicByte

    Provides a constructor for building cache-line padded AtomicByte references.

  5. object AtomicChar

    Provides a constructor for building cache-line padded AtomicChar references.

  6. object AtomicDouble

    Provides a constructor for building cache-line padded AtomicDouble references.

  7. object AtomicFloat

    Provides a constructor for building cache-line padded AtomicFloat references.

  8. object AtomicInt

    Provides a constructor for building cache-line padded AtomicInt references.

  9. object AtomicLong

    Provides a constructor for building cache-line padded AtomicLong references.

  10. object AtomicNumberAny

    Provides a constructor for building cache-line padded AtomicNumberAny references.

  11. object AtomicShort

    Provides a constructor for building cache-line padded AtomicShort references.

  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