BoundedDequeBasedMailbox is an bounded MailboxType backed by a double-ended queue. Used for stashing.
The default bounded mailbox implementation
The Taskscheduler holds multiple TaskSchdulers with different priorities All scheduled work is executed over the regular ThreadPool and the execution sequence is depenedened on the priority of the TaskSchduler
Priority TaskSchedulers: High => All queued work is processed before any other priority Normal => Normal work load, processed until max-work count Low => Only processed after normal work load Idle => only processed when no other work is queued
Behaves like a PinnedDispatcher and always executes using Akka.Dispatch.CurrentSynchronizationContextExecutorServiceFactory
The default set of contextual data needed for MessageDispatcherConfigurators
The event-based Dispatcher binds a set of actors to a thread pool backed up by a thread-safe queue.
The preferred way of creating dispatchers is to define them in configuration and use the Lookup(String) method.
Dispatchers are to be defined in configuration to allow for tuning for different environments. Use the Lookup(String) method to create a dispatcher as specified in configuration.
A dispatcher config can also be an alias, in that case it is a config string value pointing to the actual dispatcher config.
akka.actor.default-dispatcher section of the reference.conf
for documentation of dispatcher options.
Not for user instantiation or extension
Used by the Dispatcher to execute asynchronous invocations
Mailbox base class
Class responsible for pushing messages from an actor's mailbox into its receive methods. Comes in many different flavors.
Dedicates a unique thread for each actor passed in as reference. Served through its IMessageQueue.
The preferred way of creating dispatcher is to define them in configuration and then use the Lookup(String) method.
Thrown when a ExecutorService implementation rejects
Used inside Akka.Remote for constructing the low-level Helios threadpool, but inside vanilla Akka it's also used for constructing custom fixed-size-threadpool dispatchers.
UnboundedDequeBasedMailbox is an unbounded MailboxType backed by a double-ended queue. Used for stashing.
UnboundedMailbox is the default MailboxType used by Akka.NET Actors
Priority mailbox base class; unbounded mailbox that allows for prioritization of its contents. Extend this class and implement the PriorityGenerator(Object) method with your own prioritization. The value returned by the PriorityGenerator(Object) method will be used to order the message in the mailbox. Lower values will be delivered first. Messages ordered by the same number will remain in delivered in undefined order.
Priority mailbox - an unbounded mailbox that allows for prioritization of its contents. Extend this class and implement the PriorityGenerator(Object) method with your own prioritization. The value returned by the PriorityGenerator(Object) method will be used to order the message in the mailbox. Lower values will be delivered first. Messages ordered by the same number will remain in delivery order.
Semantics for message queues that are blocking
Semantics for message queues that are Double-Ended and bounded
Semantics for message queues that have a bounded size
Semantics for message queues that are Double-Ended.
Contextual information that's useful for dispatchers
Semantics for message queues that support multiple consumers
Compliment to IRequiresMessageQueue<T>
Used to determine mailbox factories which create IBoundedMessageQueueSemantics
mailboxes, and thus should be validated that the
pushTimeOut is greater than 0.
Interface to signal that an Actor requires a certain type of message queue semantics.
The mailbox type will be looked up by mapping the type T via
akka.actor.mailbox.requirements in the config,
to a mailbox configuration. If no mailbox is assigned on Props or in deployment config then this one will be used.
The queue type of the created mailbox will be checked against the type T and actor creation will fail if it doesn't fulfill the requirements.
An asynchronous operation will be executed by a MessageDispatcher.
Describes the message queue semantics of a mailbox.
Semantics for message queues that are Double-Ended and unbounded
Semantics for message queues that have an unbounded size
Windows API related Process and Thread Priorities