class SmallestMailboxRoutingLogic extends RoutingLogic
Tries to send to the non-suspended routee with fewest messages in mailbox. The selection is done in this order:
- pick any idle routee (not processing message) with empty mailbox
- pick any routee with empty mailbox
- pick routee with fewest pending messages in mailbox
- pick any remote routee, remote actors are consider lowest priority, since their mailbox size is unknown
- Annotations
- @SerialVersionUID()
- Source
- SmallestMailbox.scala
- Alphabetic
- By Inheritance
- SmallestMailboxRoutingLogic
- RoutingLogic
- NoSerializationVerificationNeeded
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- All
Instance Constructors
- new SmallestMailboxRoutingLogic()
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 SmallestMailboxRoutingLogic to any2stringadd[SmallestMailboxRoutingLogic] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
-
def
->[B](y: B): (SmallestMailboxRoutingLogic, B)
- Implicit
- This member is added by an implicit conversion from SmallestMailboxRoutingLogic to ArrowAssoc[SmallestMailboxRoutingLogic] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
ensuring(cond: (SmallestMailboxRoutingLogic) ⇒ Boolean, msg: ⇒ Any): SmallestMailboxRoutingLogic
- Implicit
- This member is added by an implicit conversion from SmallestMailboxRoutingLogic to Ensuring[SmallestMailboxRoutingLogic] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: (SmallestMailboxRoutingLogic) ⇒ Boolean): SmallestMailboxRoutingLogic
- Implicit
- This member is added by an implicit conversion from SmallestMailboxRoutingLogic to Ensuring[SmallestMailboxRoutingLogic] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean, msg: ⇒ Any): SmallestMailboxRoutingLogic
- Implicit
- This member is added by an implicit conversion from SmallestMailboxRoutingLogic to Ensuring[SmallestMailboxRoutingLogic] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean): SmallestMailboxRoutingLogic
- Implicit
- This member is added by an implicit conversion from SmallestMailboxRoutingLogic to Ensuring[SmallestMailboxRoutingLogic] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from SmallestMailboxRoutingLogic to StringFormat[SmallestMailboxRoutingLogic] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
hasMessages(a: Routee): Boolean
Returns true if the actor currently has any pending messages in the mailbox, i.e.
Returns true if the actor currently has any pending messages in the mailbox, i.e. the mailbox is not empty. It will always return false for remote actors. Method is exposed to subclasses to be able to implement custom routers based on mailbox and actor internal state.
- Attributes
- protected
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isProcessingMessage(a: Routee): Boolean
Returns true if the actor is currently processing a message.
Returns true if the actor is currently processing a message. It will always return false for remote actors. Method is exposed to subclasses to be able to implement custom routers based on mailbox and actor internal state.
- Attributes
- protected
-
def
isSuspended(a: Routee): Boolean
Returns true if the actor is currently suspended.
Returns true if the actor is currently suspended. It will always return false for remote actors. Method is exposed to subclasses to be able to implement custom routers based on mailbox and actor internal state.
- Attributes
- protected
-
def
isTerminated(a: Routee): Boolean
- Attributes
- protected
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
def
numberOfMessages(a: Routee): Int
Returns the number of pending messages in the mailbox of the actor.
Returns the number of pending messages in the mailbox of the actor. It will always return 0 for remote actors. Method is exposed to subclasses to be able to implement custom routers based on mailbox and actor internal state.
- Attributes
- protected
-
def
select(message: Any, routees: IndexedSeq[Routee]): Routee
Pick the destination for a given message.
Pick the destination for a given message. Normally it picks one of the passed
routees
, but in the end it is up to the implementation to return whatever Routee to use for sending a specific message.When implemented from Java it can be good to know that
routees.apply(index)
can be used to get an element from theIndexedSeq
.- Definition Classes
- SmallestMailboxRoutingLogic → RoutingLogic
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
→[B](y: B): (SmallestMailboxRoutingLogic, B)
- Implicit
- This member is added by an implicit conversion from SmallestMailboxRoutingLogic to ArrowAssoc[SmallestMailboxRoutingLogic] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc