Attaches the specified actor instance to this dispatcher, which includes scheduling it to run for the first time (Create() is expected to have been enqueued by the ActorCell upon mailbox creation).
Attaches the specified actor instance to this dispatcher, which includes scheduling it to run for the first time (Create() is expected to have been enqueued by the ActorCell upon mailbox creation).
Override this to define which runnables will be batched.
Override this to define which runnables will be batched.
INTERNAL API
INTERNAL API
Detaches the specified actor instance from this dispatcher
Detaches the specified actor instance from this dispatcher
INTERNAL API
INTERNAL API
INTERNAL API
INTERNAL API
Identifier of this dispatcher, corresponds to the full key of the dispatcher configuration.
Identifier of this dispatcher, corresponds to the full key of the dispatcher configuration.
INTERNAL API
INTERNAL API
If you override it, you must call it.
If you override it, you must call it. But only ever once. See "attach" for only invocation.
INTERNAL API
Returns if it was registered
Returns if it was registered
INTERNAL API
INTERNAL API
INTERNAL API
When the dispatcher no longer has any actors registered, how long will it wait until it shuts itself down, defaulting to your akka configs "akka.actor.default-dispatcher.shutdown-timeout" or default specified in reference.conf
When the dispatcher no longer has any actors registered, how long will it wait until it shuts itself down, defaulting to your akka configs "akka.actor.default-dispatcher.shutdown-timeout" or default specified in reference.conf
INTERNAL API
After the call to this method, the dispatcher mustn't begin any new message processing for the specified reference
After the call to this method, the dispatcher mustn't begin any new message processing for the specified reference
INTERNAL API
INTERNAL API
positive integer indicates the dispatcher will only process so much messages at a time from the mailbox, without checking the mailboxes of other actors.
positive integer indicates the dispatcher will only process so much messages at a time from the mailbox, without checking the mailboxes of other actors. Zero or negative means the dispatcher always continues until the mailbox is empty. Larger values (or zero or negative) increase throughput, smaller values increase fairness
INTERNAL API
INTERNAL API
If you override it, you must call it.
If you override it, you must call it. But only ever once. See "detach" for the only invocation
INTERNAL API
An executor based event driven dispatcher which will try to redistribute work from busy actors to idle actors. It is assumed that all actors using the same instance of this dispatcher can process all messages that have been sent to one of the actors. I.e. the actors belong to a pool of actors, and to the client there is no guarantee about which actor instance actually processes a given message.
Although the technique used in this implementation is commonly known as "work stealing", the actual implementation is probably best described as "work donating" because the actor of which work is being stolen takes the initiative.
The preferred way of creating dispatchers is to define configuration of it and use the the
lookup
method in akka.dispatch.Dispatchers.(Since version 2.3) Use BalancingPool instead of BalancingDispatcher
akka.dispatch.Dispatchers
akka.dispatch.BalancingDispatcher