Package

monifu.concurrent.atomic

padded

Permalink

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

Source
package.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. padded
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type Atomic[T] = atomic.Atomic[T]

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

    Permalink
  3. type AtomicBoolean = atomic.AtomicBoolean

    Permalink
  4. trait AtomicBuilder[T, R <: Atomic[T]] extends atomic.AtomicBuilder[T, R]

    Permalink
  5. type AtomicByte = atomic.AtomicByte

    Permalink
  6. type AtomicChar = atomic.AtomicChar

    Permalink
  7. type AtomicDouble = atomic.AtomicDouble

    Permalink
  8. type AtomicFloat = atomic.AtomicFloat

    Permalink
  9. type AtomicInt = atomic.AtomicInt

    Permalink
  10. type AtomicLong = atomic.AtomicLong

    Permalink
  11. type AtomicNumber[T] = atomic.AtomicNumber[T]

    Permalink
  12. type AtomicNumberAny[T] = atomic.AtomicNumberAny[T]

    Permalink
  13. type AtomicShort = atomic.AtomicShort

    Permalink
  14. type BlockableAtomic[T] = atomic.BlockableAtomic[T]

    Permalink

Value Members

  1. object Atomic

    Permalink

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

  2. object AtomicAny

    Permalink

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

  3. object AtomicBoolean

    Permalink

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

  4. object AtomicBuilder extends Level3

    Permalink
  5. object AtomicByte

    Permalink

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

  6. object AtomicChar

    Permalink

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

  7. object AtomicDouble

    Permalink

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

  8. object AtomicFloat

    Permalink

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

  9. object AtomicInt

    Permalink

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

  10. object AtomicLong

    Permalink

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

  11. object AtomicNumberAny

    Permalink

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

  12. object AtomicShort

    Permalink

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

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

    Permalink

    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