Executes the task on all the primary space nodes within the cluster (broadcast). The task is executed
on each space node with all the results reduced by the IDistributedSpaceTask<(Of <(<'R, T>)>)> Reduce operation.
The task can optionally implement ISpaceTaskResultsFilter<(Of <(<'T>)>)> that can control
if tasks should continue to accumelate or it should break and execute the reduce operation on the
results received so far.
The execution actual result will be the reduced result of the execution, or the exception thrown during
during the reduce operation. The moderator can be used as a mechanism to listen for results as they arrive.
Declaration Syntax
C# | Visual Basic | Visual C++ | J# |
R Execute<R, T>( IDistributedSpaceTask<R, T> task, ITransaction tx, int timeout )
Function Execute(Of R, T) ( _ task As IDistributedSpaceTask(Of R, T), _ tx As ITransaction, _ timeout As Integer _ ) As R
generic<typename R, typename T> R Execute( IDistributedSpaceTask<R, T>^ task, ITransaction^ tx, int timeout )
Generic Template Parameters
- R
- Type of distributed task reduced result.
- T
- Type of each single space task execution result.
Parameters
- task (IDistributedSpaceTask<(Of <(<'R, T>)>)>)
- The distributed space task to execute.
- tx (ITransaction)
- The transaction (if any) under which to work.
- timeout (Int32)
- The number of milliseconds to wait, or Infinite (-1) to wait indefinitely.
Return Value
An IAsyncResult that references the asynchronous execution.
Exceptions
Exception | Condition |
---|---|
OperationTimeoutException | Timeout expired. |