org.apache.tapestry5.ioc.services
Interface ParallelExecutor

All Known Implementing Classes:
NonParallelExecutor, ParallelExecutorImpl

public interface ParallelExecutor

A service that allows work to occur in parallel using a thread pool. The thread pool is started lazily, and is shutdown when the Registry is shutdown.

Since:
5.1.0.1
See Also:
IOCSymbols

Method Summary
<T> T
invoke(Class<T> proxyType, Invokable<T> invocable)
          As with invoke(org.apache.tapestry5.ioc.Invokable), but the result is wrapped inside a thunk.
<T> Future<T>
invoke(Invokable<T> invocable)
          Submits the invocable object to be executed in a pooled thread.
 

Method Detail

invoke

<T> Future<T> invoke(Invokable<T> invocable)
Submits the invocable object to be executed in a pooled thread. Returns a Future object representing the eventual result of the invocable's operation. The actual operation will be wrapped such that PerthreadManager.cleanup() is invoked after the operation completes.

Type Parameters:
T -
Parameters:
invocable - to execute in a thread
Returns:
Future result of that invocation

invoke

<T> T invoke(Class<T> proxyType,
             Invokable<T> invocable)
As with invoke(org.apache.tapestry5.ioc.Invokable), but the result is wrapped inside a thunk. Invoking methods on the thunk will block until the value is available.

Type Parameters:
T -
Parameters:
proxyType - return type, used to create the thunk
invocable - object that will eventually execute and return a value
Returns:
the thunk


Copyright © 2003-2012 The Apache Software Foundation.