Provides handy helper methods to create pooled actors and customize the underlying thread pool. Use static import to be able to call Actors methods without the need to prepend them with the Actors identifier.
import static org.gpars.actor.Actors.actor Actors.defaultActorPGroup.resize 1 def actor = actor { react {message -> println message } // this line will never be reached }.start() actor.send 'Hi!'
All actors created through the Actors class will belong to the same default actor group and run on daemon threads. The DefaultPGroup class should be used when actors need to be grouped into multiple groups or when non-daemon threads are to be used.
Modifiers | Name | Description |
---|---|---|
static DefaultPGroup |
defaultActorPGroup |
The default actor group to share by all actors created through the Actors class. |
Constructor and description |
---|
Actors
() |
Type | Name and description |
---|---|
static DefaultActor |
actor(java.lang.Runnable handler) Creates a new instance of DefaultActor, using the passed-in closure as the body of the actor's act() method. |
static BlockingActor |
blockingActor(java.lang.Runnable handler) Creates a new instance of BlockingActor, using the passed-in closure as the body of the actor's act() method. |
static DefaultActor |
fairActor(java.lang.Runnable handler) Creates a new instance of PooledActor, using the passed-in closure as the body of the actor's act() method. |
static Actor |
fairMessageHandler(groovy.lang.Closure code) Creates an instance of DynamicDispatchActor, which will cooperate in thread sharing with other actors in a fair manner. |
static Actor |
fairReactor(groovy.lang.Closure code) Creates a reactor around the supplied code, which will cooperate in thread sharing with other actors in a fair manner. |
static Actor |
fairStaticMessageHandler(groovy.lang.Closure code) Creates an instance of StaticDispatchActor, which will cooperate in thread sharing with other actors sharing the same thread pool. |
static Actor |
messageHandler(groovy.lang.Closure code) Creates an instance of DynamicDispatchActor. |
static Actor |
reactor(groovy.lang.Closure code) Creates a reactor around the supplied code. |
static Actor |
staticMessageHandler(groovy.lang.Closure code) Creates an instance of StaticDispatchActor. |
Methods inherited from class | Name |
---|---|
class java.lang.Object |
java.lang.Object#wait(), java.lang.Object#wait(long, int), java.lang.Object#wait(long), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll() |
The default actor group to share by all actors created through the Actors class.
Creates a new instance of DefaultActor, using the passed-in closure as the body of the actor's act() method. The created actor will be part of the default actor group.
handler
- The body of the newly created actor's act method.Creates a new instance of BlockingActor, using the passed-in closure as the body of the actor's act() method. The created actor will be part of the default actor group.
handler
- The body of the newly created actor's act method.Creates a new instance of PooledActor, using the passed-in closure as the body of the actor's act() method. The created actor will be part of the default actor group. The actor will cooperate in thread sharing with other actors sharing the same thread pool in a fair manner.
handler
- The body of the newly created actor's act method.Creates an instance of DynamicDispatchActor, which will cooperate in thread sharing with other actors in a fair manner.
code
- The closure specifying individual message handlers.Creates a reactor around the supplied code, which will cooperate in thread sharing with other actors in a fair manner. When a reactor receives a message, the supplied block of code is run with the message as a parameter and the result of the code is send in reply. The created actor will be part of the default actor group.
code
- The code to invoke for each received messageCreates an instance of StaticDispatchActor, which will cooperate in thread sharing with other actors sharing the same thread pool.
code
- The closure specifying the only statically dispatched message handler.Creates an instance of DynamicDispatchActor.
code
- The closure specifying individual message handlers.Creates a reactor around the supplied code. When a reactor receives a message, the supplied block of code is run with the message as a parameter and the result of the code is send in reply. The created actor will be part of the default actor group.
code
- The code to invoke for each received messageCreates an instance of StaticDispatchActor.
code
- The closure specifying the only statically dispatched message handler.Copyright © 2008–2014 Václav Pech. All Rights Reserved.