Packages

final class Node extends ManagedBlocker

Queue nodes. Uses Object, not E, for items to allow forgetting them after use. Writes that are intrinsically ordered wrt other accesses or CASes use simple relaxed forms.

Annotations
@SerialVersionUID()
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Node
  2. ManagedBlocker
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new Node()

    Constructs a (matched data) dummy node.

  2. new Node(item: AnyRef)

    Constructs a data node holding item if item is non-null, else a request node.

    Constructs a data node holding item if item is non-null, else a request node. Uses relaxed write because item can only be seen after piggy-backing publication via CAS.

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def appendRelaxed(next: Node): Unit
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def block(): Boolean
    Definition Classes
    NodeManagedBlocker
  7. def cannotPrecede(haveData: Boolean): Boolean

    Returns true if a node with the given mode cannot be appended to this node because this node is unmatched and has opposite data mode.

  8. def casItem(cmp: AnyRef, val: AnyRef): Boolean
  9. def casNext(cmp: Node, val: Node): Boolean
  10. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  11. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  12. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  13. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  14. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  15. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  16. val isData: Boolean
  17. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  18. def isMatched(): Boolean

    Returns true if this node has been matched, including the case of artificial matches due to cancellation.

  19. def isReleasable(): Boolean
    Definition Classes
    NodeManagedBlocker
  20. var item: AnyRef
  21. val itemAtomic: AtomicRef[AnyRef]
  22. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  23. var next: Node
  24. val nextAtomic: AtomicRef[Node]
  25. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  26. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  27. def selfLink(): Unit

    Links node to itself to avoid garbage retention.

    Links node to itself to avoid garbage retention. Called only after CASing head field, so uses relaxed write.

  28. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  29. def toString(): String
    Definition Classes
    AnyRef → Any
  30. def tryMatch(cmp: AnyRef, val: AnyRef): Boolean

    Tries to CAS-match this node; if successful, wakes waiter.

  31. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  32. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  33. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  34. var waiter: Thread
  35. val waiterAtomic: AtomicRef[AnyRef]

Inherited from ManagedBlocker

Inherited from AnyRef

Inherited from Any

Ungrouped