Package | Description |
---|---|
groovyx.gpars.activeobject | |
groovyx.gpars.dataflow |
This package holds classes for basic dataflow concurrency constructs, like dataflow variables, streams and threads.
|
groovyx.gpars.dataflow.impl | |
groovyx.gpars.dataflow.operator |
This package holds classes representing operators and channels necessary for full dataflow concurrency.
|
groovyx.gpars.dataflow.operator.component | |
groovyx.gpars.dataflow.stream | |
groovyx.gpars.group | |
groovyx.gpars.util |
Various utility classes enhancing basic Java concurrency constructs.
|
Modifier and Type | Method and Description |
---|---|
(package private) DataflowVariable<java.lang.Object> |
InternalActor.submit(java.lang.Object... args)
A DataflowVariable is passed to the actor, which will bind it once the result is known.
|
Modifier and Type | Class and Description |
---|---|
static class |
DataflowVariable.RemoteDataflowVariable<T> |
class |
LazyDataflowVariable<T>
Represents a thread-safe single-assignment, multi-read variable with delayed initialization.
|
class |
SyncDataflowVariable<T>
A synchronous variant of DataflowVariable, which blocks the writer as well as the readers.
|
Modifier and Type | Field and Description |
---|---|
private static DataflowVariable<java.lang.Object> |
Dataflows.DUMMY |
Modifier and Type | Field and Description |
---|---|
private java.util.concurrent.LinkedBlockingQueue<DataflowVariable<T>> |
DataflowQueue.queue
Stores the received DataflowVariables in the buffer.
|
private java.util.Queue<DataflowVariable<T>> |
DataflowQueue.requests
Stores unsatisfied requests for values
|
private java.util.concurrent.ConcurrentMap<java.lang.Object,DataflowVariable<java.lang.Object>> |
Dataflows.variables |
Modifier and Type | Method and Description |
---|---|
private DataflowVariable<T> |
DataflowQueue.copyDFV(java.util.Queue<DataflowVariable<T>> from,
java.util.Queue<DataflowVariable<T>> to) |
protected DataflowVariable<T> |
DataflowQueue.createVariable()
Creates a new variable to perform the next data exchange
|
protected DataflowVariable<T> |
SyncDataflowQueue.createVariable()
Creates a new variable to perform the next data exchange
|
private DataflowVariable<java.lang.Object> |
Dataflows.ensureToContainVariable(java.lang.Object name)
The idea is following:
we try to putIfAbsent dummy DFV in to map
if something real already there we are done
if not we obtain lock and put new DFV with double check
|
private DataflowVariable<java.lang.Object> |
Dataflows.putNewUnderLock(java.lang.Object name)
Utility method extracted just to help JIT
|
DataflowVariable<java.lang.Object> |
Dataflows.remove(java.lang.Object name)
Removes a DFV from the map and binds it to null, if it has not been bound yet
|
private DataflowVariable<T> |
DataflowQueue.retrieveForBind()
Takes the first unsatisfied value request and binds a value on it.
|
private DataflowVariable<T> |
DataflowQueue.retrieveOrCreateVariable()
Checks whether there's a DFV waiting in the queue and retrieves it.
|
Modifier and Type | Method and Description |
---|---|
(package private) java.util.concurrent.LinkedBlockingQueue<DataflowVariable<T>> |
DataflowQueue.getQueue() |
java.util.Iterator<java.util.Map.Entry<java.lang.Object,DataflowVariable<java.lang.Object>>> |
Dataflows.iterator()
Convenience method to play nicely with Groovy object iteration methods.
|
Modifier and Type | Method and Description |
---|---|
private DataflowVariable<T> |
DataflowQueue.copyDFV(java.util.Queue<DataflowVariable<T>> from,
java.util.Queue<DataflowVariable<T>> to) |
private DataflowVariable<T> |
DataflowQueue.copyDFV(java.util.Queue<DataflowVariable<T>> from,
java.util.Queue<DataflowVariable<T>> to) |
Modifier and Type | Field and Description |
---|---|
private DataflowVariable<V> |
ThenMessagingRunnable.result |
Constructor and Description |
---|
ThenMessagingRunnable(DataflowVariable<V> result,
groovy.lang.Closure<V> closure) |
ThenMessagingRunnable(DataflowVariable<V> result,
groovy.lang.Closure<V> closure,
groovy.lang.Closure<V> errorHandler) |
Modifier and Type | Field and Description |
---|---|
private DataflowVariable<java.lang.Boolean> |
PoisonTrackCounter.termination |
Modifier and Type | Field and Description |
---|---|
private DataflowVariable<java.lang.Boolean> |
GracefulShutdownMonitor.result
The final latch that indicates the network has been shutdown
|
Modifier and Type | Field and Description |
---|---|
protected DataflowVariable<T> |
StreamCore.first |
Modifier and Type | Method and Description |
---|---|
(package private) DataflowVariable<T> |
StreamCore.getFirstDFV() |
Modifier and Type | Method and Description |
---|---|
protected java.util.List<DataflowVariable<T>> |
DataflowStreamReadAdapter.allUnprocessedDFVs() |
Constructor and Description |
---|
StreamCore(DataflowVariable<T> first)
Creates an empty stream
|
StreamCore(DataflowVariable<T> first,
groovy.lang.Closure toBeApplied)
Creates a stream while applying the supplied initialization closure to it
|
StreamCore(DataflowVariable<T> first,
java.util.Collection<MessageStream> wheneverBoundListeners,
java.util.Collection<DataflowChannelListener<T>> updateListeners) |
Modifier and Type | Method and Description |
---|---|
private <T> void |
PGroup.whenAllBound(java.util.List<Promise> promises,
int index,
java.util.List<java.lang.Object> values,
DataflowVariable<T> result,
groovy.lang.Closure<T> code,
groovy.lang.Closure<T> errorHandler)
Waits for the promise identified by the index to be bound and then passes on to the next promise in the list
|
Modifier and Type | Method and Description |
---|---|
static <T> void |
PAUtils.evaluateArguments(Pool pool,
java.lang.Object[] args,
int current,
java.util.List<java.lang.Object> soFarArgs,
DataflowVariable<java.lang.Object> result,
groovy.lang.Closure<T> original,
boolean pooledThreadFlag)
Performs a single step in the evaluation of parameters passed into an asynchronous function
|