class BoundedNodeMessageQueue extends AbstractBoundedNodeQueue[Envelope] with MessageQueue with BoundedMessageQueueSemantics with MultipleConsumerSemantics
Lock-free bounded non-blocking multiple-producer single-consumer queue. Discards overflowing messages into DeadLetters.
- Source
- Mailbox.scala
- Alphabetic
- By Inheritance
- BoundedNodeMessageQueue
- MultipleConsumerSemantics
- BoundedMessageQueueSemantics
- MessageQueue
- AbstractBoundedNodeQueue
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- Protected
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def +(other: String): String
- Implicit
- This member is added by an implicit conversion from BoundedNodeMessageQueue toany2stringadd[BoundedNodeMessageQueue] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
- def ->[B](y: B): (BoundedNodeMessageQueue, B)
- Implicit
- This member is added by an implicit conversion from BoundedNodeMessageQueue toArrowAssoc[BoundedNodeMessageQueue] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def add(value: Envelope): Boolean
- Definition Classes
- AbstractBoundedNodeQueue
- final def addNode(n: Node[Envelope]): Boolean
- Definition Classes
- AbstractBoundedNodeQueue
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- final def capacity(): Int
- returns
the maximum capacity of this queue
- Definition Classes
- AbstractBoundedNodeQueue
- 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.
Note that we implement the method in a recursive manner mainly for atomicity (not touching the queue twice).
- Definition Classes
- BoundedNodeMessageQueue → MessageQueue
- Annotations
- @tailrec()
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- 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
- BoundedNodeMessageQueue → 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
- BoundedNodeMessageQueue → MessageQueue
- def ensuring(cond: (BoundedNodeMessageQueue) => Boolean, msg: => Any): BoundedNodeMessageQueue
- Implicit
- This member is added by an implicit conversion from BoundedNodeMessageQueue toEnsuring[BoundedNodeMessageQueue] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: (BoundedNodeMessageQueue) => Boolean): BoundedNodeMessageQueue
- Implicit
- This member is added by an implicit conversion from BoundedNodeMessageQueue toEnsuring[BoundedNodeMessageQueue] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: Boolean, msg: => Any): BoundedNodeMessageQueue
- Implicit
- This member is added by an implicit conversion from BoundedNodeMessageQueue toEnsuring[BoundedNodeMessageQueue] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: Boolean): BoundedNodeMessageQueue
- Implicit
- This member is added by an implicit conversion from BoundedNodeMessageQueue toEnsuring[BoundedNodeMessageQueue] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def hasMessages: Boolean
Indicates whether this queue is non-empty.
Indicates whether this queue is non-empty.
- Definition Classes
- BoundedNodeMessageQueue → MessageQueue
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isEmpty(): Boolean
- Definition Classes
- AbstractBoundedNodeQueue
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- 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
- BoundedNodeMessageQueue → MessageQueue
- final def peek(): Envelope
- returns
the first value of this queue, null if empty
- Definition Classes
- AbstractBoundedNodeQueue
- final def peekNode(): Node[Envelope]
- Attributes
- protected[dispatch]
- Definition Classes
- AbstractBoundedNodeQueue
- final def poll(): Envelope
Removes the first element of this queue if any
Removes the first element of this queue if any
- returns
the value of the first element of the queue, null if empty
- Definition Classes
- AbstractBoundedNodeQueue
- final def pollNode(): Node[Envelope]
Removes the first element of this queue if any
Removes the first element of this queue if any
- returns
the
Node
of the first element of the queue, null if empty
- Definition Classes
- AbstractBoundedNodeQueue
- final def pushTimeOut: Duration
- Definition Classes
- BoundedNodeMessageQueue → BoundedMessageQueueSemantics
- final def size(): Int
Returns an approximation of the queue's "current" size
Returns an approximation of the queue's "current" size
- Definition Classes
- AbstractBoundedNodeQueue
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
- def formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from BoundedNodeMessageQueue toStringFormat[BoundedNodeMessageQueue] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @deprecated @inline()
- Deprecated
(Since version 2.12.16) Use
formatString.format(value)
instead ofvalue.formatted(formatString)
, or use thef""
string interpolator. In Java 15 and later,formatted
resolves to the new method in String which has reversed parameters.
- def →[B](y: B): (BoundedNodeMessageQueue, B)
- Implicit
- This member is added by an implicit conversion from BoundedNodeMessageQueue toArrowAssoc[BoundedNodeMessageQueue] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @deprecated
- Deprecated
(Since version 2.13.0) Use
->
instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.