class NodeMessageQueue extends AbstractNodeQueue[Envelope] with MessageQueue with UnboundedMessageQueueSemantics
- Alphabetic
- By Inheritance
- NodeMessageQueue
- UnboundedMessageQueueSemantics
- MessageQueue
- AbstractNodeQueue
- AtomicReference
- Serializable
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- All
Instance Constructors
- new NodeMessageQueue()
Value Members
-
final
def
accumulateAndGet(arg0: Node[Envelope], arg1: BinaryOperator[Node[Envelope]]): Node[Envelope]
- Definition Classes
- AtomicReference
-
final
def
add(value: Envelope): Unit
Add an element to the head of the queue.
Add an element to the head of the queue.
This method can be used from any thread.
- value
the element to be added; must not be null
- Definition Classes
- AbstractNodeQueue
-
final
def
addNode(n: Node[Envelope]): Unit
Add an element to the head of the queue, providing the queue node to be used.
Add an element to the head of the queue, providing the queue node to be used.
This method can be used from any thread.
- n
the node containing the element to be added; both must not be null
- Definition Classes
- AbstractNodeQueue
-
final
def
cleanUp(owner: ActorRef, deadLetters: MessageQueue): Unit
Called when the mailbox this queue belongs to is disposed of.
Called when the mailbox this queue belongs to is disposed of. Normally it is expected to transfer all remaining messages into the dead letter queue which is passed in. The owner of this MessageQueue is passed in if available (e.g. for creating DeadLetters()), “/deadletters” otherwise.
- Definition Classes
- NodeMessageQueue → MessageQueue
- Annotations
- @tailrec()
-
final
def
compareAndSet(arg0: Node[Envelope], arg1: Node[Envelope]): Boolean
- Definition Classes
- AtomicReference
-
final
def
count(): Int
This method returns an upper bound on the queue size at the time it starts executing.
This method returns an upper bound on the queue size at the time it starts executing. It may spuriously return smaller values (including zero) if the consumer pulls items out concurrently.
This method can be used from any thread.
- returns
an upper bound on queue length at some time in the past
- Definition Classes
- AbstractNodeQueue
-
final
def
dequeue(): Envelope
Try to dequeue the next message from this queue, return null failing that.
Try to dequeue the next message from this queue, return null failing that.
- Definition Classes
- NodeMessageQueue → MessageQueue
-
final
def
enqueue(receiver: ActorRef, handle: Envelope): Unit
Try to enqueue the message to this queue, or throw an exception.
Try to enqueue the message to this queue, or throw an exception.
- Definition Classes
- NodeMessageQueue → MessageQueue
-
final
def
get(): Node[Envelope]
- Definition Classes
- AtomicReference
-
final
def
getAndAccumulate(arg0: Node[Envelope], arg1: BinaryOperator[Node[Envelope]]): Node[Envelope]
- Definition Classes
- AtomicReference
-
final
def
getAndSet(arg0: Node[Envelope]): Node[Envelope]
- Definition Classes
- AtomicReference
-
final
def
getAndUpdate(arg0: UnaryOperator[Node[Envelope]]): Node[Envelope]
- Definition Classes
- AtomicReference
-
final
def
hasMessages: Boolean
Indicates whether this queue is non-empty.
Indicates whether this queue is non-empty.
- Definition Classes
- NodeMessageQueue → MessageQueue
-
final
def
isEmpty(): Boolean
Query the queue whether it is empty right now.
Query the queue whether it is empty right now.
This method can be used from any thread.
- returns
true if queue was empty at some point in the past
- Definition Classes
- AbstractNodeQueue
-
final
def
lazySet(arg0: Node[Envelope]): Unit
- Definition Classes
- AtomicReference
-
final
def
numberOfMessages: Int
Should return the current number of messages held in this queue; may always return 0 if no other value is available efficiently.
Should return the current number of messages held in this queue; may always return 0 if no other value is available efficiently. Do not use this for testing for presence of messages, use
hasMessages
instead.- Definition Classes
- NodeMessageQueue → MessageQueue
-
final
def
peek(): Envelope
Query the queue tail for the next element without dequeuing it.
Query the queue tail for the next element without dequeuing it.
Use this method only from the consumer thread!
- returns
element if there was one, or null if there was none
- Definition Classes
- AbstractNodeQueue
-
final
def
poll(): Envelope
Pull one item from the queue’s tail if there is one.
Pull one item from the queue’s tail if there is one.
Use this method only from the consumer thread!
- returns
element if there was one, or null if there was none
- Definition Classes
- AbstractNodeQueue
-
final
def
pollNode(): Node[Envelope]
Pull one item from the queue, returning it within a queue node.
Pull one item from the queue, returning it within a queue node.
Use this method only from the consumer thread!
- returns
queue node with element inside if there was one, or null if there was none
- Definition Classes
- AbstractNodeQueue
-
final
def
set(arg0: Node[Envelope]): Unit
- Definition Classes
- AtomicReference
-
def
toString(): String
- Definition Classes
- AtomicReference → AnyRef → Any
-
final
def
updateAndGet(arg0: UnaryOperator[Node[Envelope]]): Node[Envelope]
- Definition Classes
- AtomicReference
-
final
def
weakCompareAndSet(arg0: Node[Envelope], arg1: Node[Envelope]): Boolean
- Definition Classes
- AtomicReference