|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectgroovyx.gpars.dataflow.Dataflow
public abstract class Dataflow
Contains factory methods to create dataflow actors and starting them.
| Field Summary | |
|---|---|
static java.lang.ThreadLocal<PGroup> |
activeParallelGroup
Maps threads/tasks to parallel groups they belong to |
static PGroup |
DATA_FLOW_GROUP
The parallel group used by all Dataflow Concurrency actors by default. |
| Constructor Summary | |
|---|---|
Dataflow()
|
|
| Method Summary | ||
|---|---|---|
static DataflowProcessor |
operator(DataflowReadChannel input,
DataflowWriteChannel output,
groovy.lang.Closure code)
Creates an operator using the current parallel group |
|
static DataflowProcessor |
operator(DataflowReadChannel input,
DataflowWriteChannel output,
int maxForks,
groovy.lang.Closure code)
Creates an operator using the current parallel group |
|
static DataflowProcessor |
operator(java.util.List inputChannels,
java.util.List outputChannels,
groovy.lang.Closure code)
Creates an operator using the current parallel group |
|
static DataflowProcessor |
operator(java.util.List inputChannels,
java.util.List outputChannels,
int maxForks,
groovy.lang.Closure code)
Creates an operator using the current parallel group |
|
static DataflowProcessor |
operator(java.util.Map channels,
groovy.lang.Closure code)
Creates an operator using the default dataflow parallel group |
|
static DataflowProcessor |
prioritySelector(java.util.List inputChannels,
java.util.List outputChannels)
Creates a prioritizing selector using the default dataflow parallel group. |
|
static DataflowProcessor |
prioritySelector(java.util.List inputChannels,
java.util.List outputChannels,
groovy.lang.Closure code)
Creates a prioritizing selector using the default dataflow parallel group Input with lower position index have higher priority. |
|
static DataflowProcessor |
prioritySelector(java.util.Map channels)
Creates a prioritizing selector using the default dataflow parallel group. |
|
static DataflowProcessor |
prioritySelector(java.util.Map channels,
groovy.lang.Closure code)
Creates a prioritizing selector using the default dataflow parallel group Input with lower position index have higher priority. |
|
static PGroup |
retrieveCurrentDFPGroup()
Retrieves the thread-local value of the active PGroup or the default DataflowGroup |
|
static Select<?> |
select(java.util.List<SelectableChannel> channels)
Creates a select using the default dataflow parallel group. |
|
static Select<?> |
select(SelectableChannel<?>... channels)
Creates a select using the default dataflow parallel group. |
|
static DataflowProcessor |
selector(java.util.List inputChannels,
java.util.List outputChannels)
Creates a selector using the default dataflow parallel group. |
|
static DataflowProcessor |
selector(java.util.List inputChannels,
java.util.List outputChannels,
groovy.lang.Closure code)
Creates a selector using the default dataflow parallel group |
|
static DataflowProcessor |
selector(java.util.Map channels)
Creates a selector using the default dataflow parallel group. |
|
static DataflowProcessor |
selector(java.util.Map channels,
groovy.lang.Closure code)
Creates a selector using the default dataflow parallel group |
|
static DataflowProcessor |
splitter(DataflowReadChannel inputChannel,
java.util.List<DataflowWriteChannel> outputChannels)
Creates a splitter copying its single input channel into all of its output channels. |
|
static DataflowProcessor |
splitter(DataflowReadChannel inputChannel,
java.util.List<DataflowWriteChannel> outputChannels,
int maxForks)
Creates a splitter copying its single input channel into all of its output channels. |
|
static
|
task(java.util.concurrent.Callable<T> callable)
Creates a new task assigned to a thread from the current parallel group. |
|
static
|
task(groovy.lang.Closure<T> code)
Creates a new task assigned to a thread from the default dataflow parallel group. |
|
static Promise<java.lang.Object> |
task(java.lang.Runnable runnable)
Creates a new task assigned to a thread from the current parallel group. |
|
static java.lang.Object |
usingGroup(PGroup group,
groovy.lang.Closure code)
Sets the supplied PGroup as the default for the given block of code. |
|
static
|
whenAllBound(java.util.List<Promise> promises,
groovy.lang.Closure<T> code)
Without blocking the thread waits for all the promises to get bound and then passes them to the supplied closure. |
|
static
|
whenAllBound(java.util.List<Promise> promises,
groovy.lang.Closure<T> code,
groovy.lang.Closure<T> errorHandler)
Without blocking the thread waits for all the promises to get bound and then passes them to the supplied closure. |
|
static
|
whenAllBound(Promise promise1,
groovy.lang.Closure<T> code)
Without blocking the thread waits for all the promises to get bound and then passes them to the supplied closure. |
|
static
|
whenAllBound(Promise promise1,
groovy.lang.Closure<T> code,
groovy.lang.Closure<T> errorHandler)
Without blocking the thread waits for all the promises to get bound and then passes them to the supplied closure. |
|
static
|
whenAllBound(Promise promise1,
Promise promise2,
groovy.lang.Closure<T> code)
Without blocking the thread waits for all the promises to get bound and then passes them to the supplied closure. |
|
static
|
whenAllBound(Promise promise1,
Promise promise2,
groovy.lang.Closure<T> code,
groovy.lang.Closure<T> errorHandler)
Without blocking the thread waits for all the promises to get bound and then passes them to the supplied closure. |
|
static
|
whenAllBound(Promise promise1,
Promise promise2,
Promise promise3,
groovy.lang.Closure<T> code)
Without blocking the thread waits for all the promises to get bound and then passes them to the supplied closure. |
|
static
|
whenAllBound(Promise promise1,
Promise promise2,
Promise promise3,
groovy.lang.Closure<T> code,
groovy.lang.Closure<T> errorHandler)
Without blocking the thread waits for all the promises to get bound and then passes them to the supplied closure. |
|
static
|
whenAllBound(Promise promise1,
Promise promise2,
Promise promise3,
Promise promise4,
groovy.lang.Closure<T> code)
Without blocking the thread waits for all the promises to get bound and then passes them to the supplied closure. |
|
static
|
whenAllBound(Promise promise1,
Promise promise2,
Promise promise3,
Promise promise4,
groovy.lang.Closure<T> code,
groovy.lang.Closure<T> errorHandler)
Without blocking the thread waits for all the promises to get bound and then passes them to the supplied closure. |
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final PGroup DATA_FLOW_GROUP
public static final java.lang.ThreadLocal<PGroup> activeParallelGroup
| Constructor Detail |
|---|
public Dataflow()
| Method Detail |
|---|
public static PGroup retrieveCurrentDFPGroup()
public static java.lang.Object usingGroup(PGroup group,
groovy.lang.Closure code)
group - The group to make the default inside the blockcode - The code to run with overriden default
public static <T> Promise<T> task(groovy.lang.Closure<T> code)
code - The task body to run
public static <T> Promise<T> task(java.util.concurrent.Callable<T> callable)
callable - The task body to run
public static Promise<java.lang.Object> task(java.lang.Runnable runnable)
runnable - The task body to run
public static DataflowProcessor operator(java.util.Map channels,
groovy.lang.Closure code)
channels - A map specifying "inputs" and "outputs" - dataflow channels (instances of the DataflowQueue or DataflowVariable classes) to use for inputs and outputscode - The operator's body to run each time all inputs have a value to read
public static DataflowProcessor operator(java.util.List inputChannels,
java.util.List outputChannels,
groovy.lang.Closure code)
inputChannels - dataflow channels to use for inputoutputChannels - dataflow channels to use for outputcode - The operator's body to run each time all inputs have a value to read
public static DataflowProcessor operator(java.util.List inputChannels,
java.util.List outputChannels,
int maxForks,
groovy.lang.Closure code)
inputChannels - dataflow channels to use for inputoutputChannels - dataflow channels to use for outputmaxForks - Number of parallel threads running operator's body, defaults to 1code - The operator's body to run each time all inputs have a value to read
public static DataflowProcessor operator(DataflowReadChannel input,
DataflowWriteChannel output,
groovy.lang.Closure code)
input - a dataflow channel to use for inputoutput - a dataflow channel to use for outputcode - The operator's body to run each time all inputs have a value to read
public static DataflowProcessor operator(DataflowReadChannel input,
DataflowWriteChannel output,
int maxForks,
groovy.lang.Closure code)
input - a dataflow channel to use for inputoutput - a dataflow channel to use for outputmaxForks - Number of parallel threads running operator's body, defaults to 1code - The operator's body to run each time all inputs have a value to read
public static DataflowProcessor selector(java.util.Map channels,
groovy.lang.Closure code)
channels - A map specifying "inputs" and "outputs" - dataflow channels (instances of the DataflowQueue or DataflowVariable classes) to use for inputs and outputscode - The selector's body to run each time a value is available in any of the inputs channels
public static DataflowProcessor selector(java.util.List inputChannels,
java.util.List outputChannels,
groovy.lang.Closure code)
inputChannels - dataflow channels to use for inputoutputChannels - dataflow channels to use for outputcode - The selector's body to run each time a value is available in any of the inputs channels
public static DataflowProcessor selector(java.util.Map channels)
channels - A map specifying "inputs" and "outputs" - dataflow channels (instances of the DataflowQueue or DataflowVariable classes) to use for inputs and outputs
public static DataflowProcessor selector(java.util.List inputChannels,
java.util.List outputChannels)
inputChannels - dataflow channels to use for inputoutputChannels - dataflow channels to use for output
public static DataflowProcessor prioritySelector(java.util.Map channels,
groovy.lang.Closure code)
channels - A map specifying "inputs" and "outputs" - dataflow channels (instances of the DataflowQueue or DataflowVariable classes) to use for inputs and outputscode - The selector's body to run each time a value is available in any of the inputs channels
public static DataflowProcessor prioritySelector(java.util.List inputChannels,
java.util.List outputChannels,
groovy.lang.Closure code)
inputChannels - dataflow channels to use for inputoutputChannels - dataflow channels to use for outputcode - The selector's body to run each time a value is available in any of the inputs channels
public static DataflowProcessor prioritySelector(java.util.Map channels)
channels - A map specifying "inputs" and "outputs" - dataflow channels (instances of the DataflowQueue or DataflowVariable classes) to use for inputs and outputs
public static DataflowProcessor prioritySelector(java.util.List inputChannels,
java.util.List outputChannels)
inputChannels - dataflow channels to use for inputoutputChannels - dataflow channels to use for output
public static DataflowProcessor splitter(DataflowReadChannel inputChannel,
java.util.List<DataflowWriteChannel> outputChannels)
inputChannel - The channel to read values fromoutputChannels - A list of channels to output to
public static DataflowProcessor splitter(DataflowReadChannel inputChannel,
java.util.List<DataflowWriteChannel> outputChannels,
int maxForks)
inputChannel - The channel to read values fromoutputChannels - A list of channels to output tomaxForks - Number of threads running the splitter's body, defaults to 1
public static Select<?> select(SelectableChannel<?>... channels)
channels - Dataflow variables or streams to wait for values on
public static Select<?> select(java.util.List<SelectableChannel> channels)
channels - Dataflow variables or streams to wait for values on
public static <T> Promise<T> whenAllBound(java.util.List<Promise> promises,
groovy.lang.Closure<T> code)
T - The type of the final resultpromises - The promises to wait forcode - A closure to execute with concrete values for each of the supplied promises
public static <T> Promise<T> whenAllBound(Promise promise1,
groovy.lang.Closure<T> code)
T - The type of the final resultpromise1 - The promises to wait forcode - A closure to execute with concrete values for each of the supplied promises
public static <T> Promise<T> whenAllBound(Promise promise1,
Promise promise2,
groovy.lang.Closure<T> code)
T - The type of the final resultpromise1 - The promises to wait forpromise2 - The promises to wait forcode - A closure to execute with concrete values for each of the supplied promises
public static <T> Promise<T> whenAllBound(Promise promise1,
Promise promise2,
Promise promise3,
groovy.lang.Closure<T> code)
T - The type of the final resultpromise1 - The promises to wait forpromise2 - The promises to wait forpromise3 - The promises to wait forcode - A closure to execute with concrete values for each of the supplied promises
public static <T> Promise<T> whenAllBound(Promise promise1,
Promise promise2,
Promise promise3,
Promise promise4,
groovy.lang.Closure<T> code)
T - The type of the final resultpromise1 - The promises to wait forpromise2 - The promises to wait forpromise3 - The promises to wait forpromise4 - The promises to wait forcode - A closure to execute with concrete values for each of the supplied promises
public static <T> Promise<T> whenAllBound(java.util.List<Promise> promises,
groovy.lang.Closure<T> code,
groovy.lang.Closure<T> errorHandler)
T - The type of the final resultpromises - The promises to wait forcode - A closure to execute with concrete values for each of the supplied promiseserrorHandler - A closure handling an exception (an instance of Throwable), if it gets bound
public static <T> Promise<T> whenAllBound(Promise promise1,
groovy.lang.Closure<T> code,
groovy.lang.Closure<T> errorHandler)
T - The type of the final resultpromise1 - The promises to wait forcode - A closure to execute with concrete values for each of the supplied promiseserrorHandler - A closure handling an exception (an instance of Throwable), if it gets bound
public static <T> Promise<T> whenAllBound(Promise promise1,
Promise promise2,
groovy.lang.Closure<T> code,
groovy.lang.Closure<T> errorHandler)
T - The type of the final resultpromise1 - The promises to wait forpromise2 - The promises to wait forcode - A closure to execute with concrete values for each of the supplied promiseserrorHandler - A closure handling an exception (an instance of Throwable), if it gets bound
public static <T> Promise<T> whenAllBound(Promise promise1,
Promise promise2,
Promise promise3,
groovy.lang.Closure<T> code,
groovy.lang.Closure<T> errorHandler)
T - The type of the final resultpromise1 - The promises to wait forpromise2 - The promises to wait forpromise3 - The promises to wait forcode - A closure to execute with concrete values for each of the supplied promiseserrorHandler - A closure handling an exception (an instance of Throwable), if it gets bound
public static <T> Promise<T> whenAllBound(Promise promise1,
Promise promise2,
Promise promise3,
Promise promise4,
groovy.lang.Closure<T> code,
groovy.lang.Closure<T> errorHandler)
T - The type of the final resultpromise1 - The promises to wait forpromise2 - The promises to wait forpromise3 - The promises to wait forpromise4 - The promises to wait forcode - A closure to execute with concrete values for each of the supplied promiseserrorHandler - A closure handling an exception (an instance of Throwable), if it gets bound
|
Copyright © 2008–2013 Václav Pech. All Rights Reserved. | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||