Class ParallelExecutorImpl
- java.lang.Object
-
- org.apache.tapestry5.ioc.internal.services.ParallelExecutorImpl
-
- All Implemented Interfaces:
ParallelExecutor
public class ParallelExecutorImpl extends java.lang.Object implements ParallelExecutor
-
-
Constructor Summary
Constructors Constructor Description ParallelExecutorImpl(java.util.concurrent.ExecutorService executorService, ThunkCreator thunkCreator, PerthreadManager perthreadManager)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> Tinvoke(java.lang.Class<T> proxyType, Invokable<T> invocable)As withParallelExecutor.invoke(org.apache.tapestry5.ioc.Invokable), but the result is wrapped inside a thunk.<T> java.util.concurrent.Future<T>invoke(Invokable<T> invocable)Submits the invocable object to be executed in a pooled thread.
-
-
-
Constructor Detail
-
ParallelExecutorImpl
public ParallelExecutorImpl(java.util.concurrent.ExecutorService executorService, ThunkCreator thunkCreator, PerthreadManager perthreadManager)
-
-
Method Detail
-
invoke
public <T> java.util.concurrent.Future<T> invoke(Invokable<T> invocable)
Description copied from interface:ParallelExecutorSubmits 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 thatPerthreadManager.cleanup()is invoked after the operation completes.- Specified by:
invokein interfaceParallelExecutor- Parameters:
invocable- to execute in a thread- Returns:
- Future result of that invocation
-
invoke
public <T> T invoke(java.lang.Class<T> proxyType, Invokable<T> invocable)
Description copied from interface:ParallelExecutorAs withParallelExecutor.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.- Specified by:
invokein interfaceParallelExecutor- Parameters:
proxyType- return type, used to create the thunkinvocable- object that will eventually execute and return a value- Returns:
- the thunk
-
-