org.apache.tapestry5.ioc.internal.services
Class ParallelExecutorImpl

java.lang.Object
  extended by org.apache.tapestry5.ioc.internal.services.ParallelExecutorImpl
All Implemented Interfaces:
ParallelExecutor

public class ParallelExecutorImpl
extends java.lang.Object
implements ParallelExecutor


Constructor Summary
ParallelExecutorImpl(java.util.concurrent.ExecutorService executorService, ThunkCreator thunkCreator, PerthreadManager perthreadManager)
           
 
Method Summary
<T> T
invoke(java.lang.Class<T> proxyType, Invokable<T> invocable)
          As with ParallelExecutor.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.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

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: ParallelExecutor
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.

Specified by:
invoke in interface ParallelExecutor
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: ParallelExecutor
As with ParallelExecutor.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:
invoke in interface ParallelExecutor
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.