Class/Object

monifu.concurrent.atomic

AtomicChar

Related Docs: object AtomicChar | package atomic

Permalink

class AtomicChar extends AtomicNumber[Char] with BlockableAtomic[Char]

Source
AtomicChar.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AtomicChar
  2. BlockableAtomic
  3. AtomicNumber
  4. Atomic
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def +=(v: Char): Unit

    Permalink
    Definition Classes
    AtomicCharAtomicNumber
  4. final def -=(v: Char): Unit

    Permalink
    Definition Classes
    AtomicCharAtomicNumber
  5. final def :=(value: Char): Unit

    Permalink

    Alias for set().

    Alias for set(). Updates the current value.

    value

    will be the new value returned by get()

    Definition Classes
    AtomicCharAtomic
  6. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  7. final def add(v: Char): Unit

    Permalink
    Definition Classes
    AtomicCharAtomicNumber
    Annotations
    @tailrec()
  8. final def addAndGet(v: Char): Char

    Permalink
    Definition Classes
    AtomicCharAtomicNumber
    Annotations
    @tailrec()
  9. def apply(): Char

    Permalink

    returns

    the current value persisted by this Atomic, an alias for get()

    Definition Classes
    Atomic
  10. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  11. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  12. final def compareAndSet(expect: Char, update: Char): Boolean

    Permalink

    Does a compare-and-set operation on the current value.

    Does a compare-and-set operation on the current value. For more info, checkout the related Compare-and-swap Wikipedia page.

    It's an atomic, worry free operation.

    expect

    is the value you expect to be persisted when the operation happens

    update

    will be the new value, should the check for expect succeeds

    returns

    either true in case the operation succeeded or false otherwise

    Definition Classes
    AtomicCharAtomic
  13. final def countDownToZero(v: Char = 1): Char

    Permalink

    Decrements this number until it reaches zero.

    Decrements this number until it reaches zero.

    returns

    a number representing how much it was able to subtract, which is a value between zero and v

    Definition Classes
    AtomicCharAtomicNumber
    Annotations
    @tailrec()
  14. final def decrement(v: Int = 1): Unit

    Permalink
    Definition Classes
    AtomicCharAtomicNumber
  15. final def decrementAndGet(v: Int = 1): Char

    Permalink
    Definition Classes
    AtomicCharAtomicNumber
  16. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  17. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  18. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  19. final def get: Char

    Permalink

    returns

    the current value persisted by this Atomic

    Definition Classes
    AtomicCharAtomic
  20. final def getAndAdd(v: Char): Char

    Permalink
    Definition Classes
    AtomicCharAtomicNumber
    Annotations
    @tailrec()
  21. final def getAndDecrement(v: Int = 1): Char

    Permalink
    Definition Classes
    AtomicCharAtomicNumber
  22. final def getAndIncrement(v: Int = 1): Char

    Permalink
    Definition Classes
    AtomicCharAtomicNumber
    Annotations
    @tailrec()
  23. final def getAndSet(update: Char): Char

    Permalink

    Sets the persisted value to update and returns the old value that was in place.

    Sets the persisted value to update and returns the old value that was in place. It's an atomic, worry free operation.

    Definition Classes
    AtomicCharAtomic
  24. final def getAndSubtract(v: Char): Char

    Permalink
    Definition Classes
    AtomicCharAtomicNumber
    Annotations
    @tailrec()
  25. final def getAndTransform(cb: (Char) ⇒ Char): Char

    Permalink

    Abstracts over compareAndSet.

    Abstracts over compareAndSet. You specify a transformation by specifying a callback to be executed, a callback that transforms the current value. This method will loop until it will succeed in replacing the current value with the one produced by the given callback.

    Note that the callback will be executed on each iteration of the loop, so it can be called multiple times - don't do destructive I/O or operations that mutate global state in it.

    cb

    is a callback that receives the current value as input and returns the update which is the new value that should be persisted

    returns

    the old value, just prior to when the successful update happened

    Definition Classes
    AtomicCharAtomic
    Annotations
    @tailrec()
  26. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  27. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  28. final def increment(v: Int = 1): Unit

    Permalink
    Definition Classes
    AtomicCharAtomicNumber
    Annotations
    @tailrec()
  29. final def incrementAndGet(v: Int = 1): Char

    Permalink
    Definition Classes
    AtomicCharAtomicNumber
    Annotations
    @tailrec()
  30. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  31. final def lazySet(update: Char): Unit

    Permalink

    Eventually sets to the given value.

    Eventually sets to the given value. Has weaker visibility guarantees than the normal set().

    Definition Classes
    AtomicCharAtomic
  32. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  33. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  34. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  35. final def set(update: Char): Unit

    Permalink

    Updates the current value.

    Updates the current value.

    update

    will be the new value returned by get()

    Definition Classes
    AtomicCharAtomic
  36. final def subtract(v: Char): Unit

    Permalink
    Definition Classes
    AtomicCharAtomicNumber
    Annotations
    @tailrec()
  37. final def subtractAndGet(v: Char): Char

    Permalink
    Definition Classes
    AtomicCharAtomicNumber
    Annotations
    @tailrec()
  38. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  39. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  40. final def transform(cb: (Char) ⇒ Char): Unit

    Permalink

    Abstracts over compareAndSet.

    Abstracts over compareAndSet. You specify a transformation by specifying a callback to be executed, a callback that transforms the current value. This method will loop until it will succeed in replacing the current value with the one produced by the given callback.

    Note that the callback will be executed on each iteration of the loop, so it can be called multiple times - don't do destructive I/O or operations that mutate global state in it.

    cb

    is a callback that receives the current value as input and returns the update which is the new value that should be persisted

    Definition Classes
    AtomicCharAtomic
    Annotations
    @tailrec()
  41. final def transformAndExtract[U](cb: (Char) ⇒ (U, Char)): U

    Permalink

    Abstracts over compareAndSet.

    Abstracts over compareAndSet. You specify a transformation by specifying a callback to be executed, a callback that transforms the current value. This method will loop until it will succeed in replacing the current value with the one produced by your callback.

    Note that the callback will be executed on each iteration of the loop, so it can be called multiple times - don't do destructive I/O or operations that mutate global state in it.

    cb

    is a callback that receives the current value as input and returns a tuple that specifies the update + what should this method return when the operation succeeds.

    returns

    whatever was specified by your callback, once the operation succeeds

    Definition Classes
    AtomicCharAtomic
    Annotations
    @tailrec()
  42. final def transformAndGet(cb: (Char) ⇒ Char): Char

    Permalink

    Abstracts over compareAndSet.

    Abstracts over compareAndSet. You specify a transformation by specifying a callback to be executed, a callback that transforms the current value. This method will loop until it will succeed in replacing the current value with the one produced by the given callback.

    Note that the callback will be executed on each iteration of the loop, so it can be called multiple times - don't do destructive I/O or operations that mutate global state in it.

    cb

    is a callback that receives the current value as input and returns the update which is the new value that should be persisted

    returns

    whatever the update is, after the operation succeeds

    Definition Classes
    AtomicCharAtomic
    Annotations
    @tailrec()
  43. final def update(value: Char): Unit

    Permalink

    Alias for set().

    Alias for set(). Updates the current value.

    value

    will be the new value returned by get()

    Definition Classes
    AtomicCharAtomic
  44. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  45. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  46. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  47. final def waitForCompareAndSet(expect: Char, update: Char, waitAtMost: FiniteDuration): Unit

    Permalink

    Waits until the compareAndSet operation succeeds, e.g...

    Waits until the compareAndSet operation succeeds, e.g... 1. until the old value == expected and the operation succeeds, or 2. until the current thread is interrupted, or 3. the specified timeout is due

    So this can throw an exception on timeout, useful for when you want to insure that you don't block the current thread ad infinitum

    waitAtMost

    specifies the timeout, after which this method throws a TimeoutException

    Definition Classes
    AtomicCharBlockableAtomic
    Annotations
    @throws( classOf[InterruptedException] ) @throws( classOf[TimeoutException] )
  48. final def waitForCompareAndSet(expect: Char, update: Char, maxRetries: Int): Boolean

    Permalink

    Waits until the compareAndSet operation succeeds, e.g...

    Waits until the compareAndSet operation succeeds, e.g...

    1. until the old value == expected and the operation succeeds, or 2. until the current thread is interrupted 3. until the the spin lock retried for a maximum of maxRetries

    expect

    the expected current value

    update

    the value to replace the current value

    maxRetries

    the maximum number of times to retry in case of failure

    returns

    true if the operation succeeded or false in case it failed after it retried for maxRetries times

    Definition Classes
    AtomicCharBlockableAtomic
    Annotations
    @tailrec() @throws( classOf[InterruptedException] )
  49. final def waitForCompareAndSet(expect: Char, update: Char): Unit

    Permalink

    Waits until the compareAndSet operation succeeds, e.g...

    Waits until the compareAndSet operation succeeds, e.g... 1. until the old value == expected and the operation succeeds, or 2. until the current thread is interrupted

    Definition Classes
    AtomicCharBlockableAtomic
    Annotations
    @tailrec() @throws( classOf[InterruptedException] )
  50. final def waitForCondition(waitAtMost: FiniteDuration, p: (Char) ⇒ Boolean): Unit

    Permalink

    Waits until the specified callback, that receives the current value, returns true.

    Waits until the specified callback, that receives the current value, returns true. Throws a TimeoutException in case the specified waitAtMost timeout is due.

    Definition Classes
    AtomicCharBlockableAtomic
    Annotations
    @throws( classOf[InterruptedException] ) @throws( classOf[TimeoutException] )
  51. final def waitForCondition(p: (Char) ⇒ Boolean): Unit

    Permalink

    Waits until the specified callback, that receives the current value, returns true.

    Waits until the specified callback, that receives the current value, returns true.

    Definition Classes
    AtomicCharBlockableAtomic
    Annotations
    @tailrec() @throws( classOf[InterruptedException] )
  52. final def waitForValue(expect: Char, waitAtMost: FiniteDuration): Unit

    Permalink

    Waits until the specified expect value == the value stored by this Atomic reference or until the current thread gets interrupted.

    Waits until the specified expect value == the value stored by this Atomic reference or until the current thread gets interrupted.

    This can throw an exception on timeout, useful for when you want to insure that you don't block the current thread ad infinitum

    waitAtMost

    specifies the timeout, after which this method throws a TimeoutException

    Definition Classes
    AtomicCharBlockableAtomic
    Annotations
    @throws( classOf[InterruptedException] ) @throws( classOf[TimeoutException] )
  53. final def waitForValue(expect: Char): Unit

    Permalink

    Waits until the specified expect value == the value stored by this Atomic reference or until the current thread gets interrupted.

    Waits until the specified expect value == the value stored by this Atomic reference or until the current thread gets interrupted.

    Definition Classes
    AtomicCharBlockableAtomic
    Annotations
    @tailrec() @throws( classOf[InterruptedException] )

Inherited from BlockableAtomic[Char]

Inherited from AtomicNumber[Char]

Inherited from Atomic[Char]

Inherited from AnyRef

Inherited from Any

Ungrouped