Added more dispatcher info.
This commit is contained in:
parent
6cc30d8f37
commit
6f36cc950b
1 changed files with 17 additions and 0 deletions
|
|
@ -42,6 +42,9 @@ There are 4 different types of message dispatchers:
|
||||||
|
|
||||||
* Dispatcher
|
* Dispatcher
|
||||||
|
|
||||||
|
- This is an event-based dispatcher that binds a set of Actors to a thread pool. It is the default dispatcher
|
||||||
|
used if one is not specified.
|
||||||
|
|
||||||
- Sharability: Unlimited
|
- Sharability: Unlimited
|
||||||
|
|
||||||
- Mailboxes: Any, creates one per Actor
|
- Mailboxes: Any, creates one per Actor
|
||||||
|
|
@ -55,6 +58,8 @@ There are 4 different types of message dispatchers:
|
||||||
|
|
||||||
* PinnedDispatcher
|
* PinnedDispatcher
|
||||||
|
|
||||||
|
- This dispatcher dedicates a unique thread for each actor passed in as reference.
|
||||||
|
|
||||||
- Sharability: None
|
- Sharability: None
|
||||||
|
|
||||||
- Mailboxes: Any, creates one per Actor
|
- Mailboxes: Any, creates one per Actor
|
||||||
|
|
@ -66,6 +71,10 @@ There are 4 different types of message dispatchers:
|
||||||
|
|
||||||
* BalancingDispatcher
|
* BalancingDispatcher
|
||||||
|
|
||||||
|
- This is an executor based event driven dispatcher that 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.
|
||||||
|
|
||||||
- Sharability: Actors of the same type only
|
- Sharability: Actors of the same type only
|
||||||
|
|
||||||
- Mailboxes: Any, creates one for all Actors
|
- Mailboxes: Any, creates one for all Actors
|
||||||
|
|
@ -79,6 +88,9 @@ There are 4 different types of message dispatchers:
|
||||||
|
|
||||||
* CallingThreadDispatcher
|
* CallingThreadDispatcher
|
||||||
|
|
||||||
|
- This dispatcher runs invocations on the current thread only. This dispatcher does not create any new threads,
|
||||||
|
but it can be used from different threads concurrently for the same actor.
|
||||||
|
|
||||||
- Sharability: Unlimited
|
- Sharability: Unlimited
|
||||||
|
|
||||||
- Mailboxes: Any, creates one per Actor per Thread (on demand)
|
- Mailboxes: Any, creates one per Actor per Thread (on demand)
|
||||||
|
|
@ -87,6 +99,7 @@ There are 4 different types of message dispatchers:
|
||||||
|
|
||||||
- Driven by: The calling thread (duh)
|
- Driven by: The calling thread (duh)
|
||||||
|
|
||||||
|
|
||||||
More dispatcher configuration examples
|
More dispatcher configuration examples
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
|
@ -98,6 +111,10 @@ And then using it:
|
||||||
|
|
||||||
.. includecode:: ../scala/code/akka/docs/dispatcher/DispatcherDocSpec.scala#defining-pinned-dispatcher
|
.. includecode:: ../scala/code/akka/docs/dispatcher/DispatcherDocSpec.scala#defining-pinned-dispatcher
|
||||||
|
|
||||||
|
Note that ``thread-pool-executor`` configuration as per the above ``my-thread-pool-dispatcher`` exmaple is
|
||||||
|
NOT applicable. This is because every actor will have its own thread pool when using ``PinnedDispatcher``,
|
||||||
|
and that pool will have only one thread.
|
||||||
|
|
||||||
Mailboxes
|
Mailboxes
|
||||||
---------
|
---------
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue