EDU.oswego.cs.dl.util.concurrent
Class TimedCallable

java.lang.Object
  extended by EDU.oswego.cs.dl.util.concurrent.ThreadFactoryUser
      extended by EDU.oswego.cs.dl.util.concurrent.TimedCallable
All Implemented Interfaces:
Callable

public class TimedCallable
extends ThreadFactoryUser
implements Callable

TimedCallable runs a Callable function for a given length of time. The function is run in its own thread. If the function completes in time, its result is returned; otherwise the thread is interrupted and an InterruptedException is thrown.

Note: TimedCallable will always return within the given time limit (modulo timer inaccuracies), but whether or not the worker thread stops in a timely fashion depends on the interrupt handling in the Callable function's implementation.


Nested Class Summary
 
Nested classes/interfaces inherited from class EDU.oswego.cs.dl.util.concurrent.ThreadFactoryUser
ThreadFactoryUser.DefaultThreadFactory
 
Field Summary
 
Fields inherited from class EDU.oswego.cs.dl.util.concurrent.ThreadFactoryUser
threadFactory_
 
Constructor Summary
TimedCallable(Callable function, long millis)
           
 
Method Summary
 java.lang.Object call()
          Perform some action that returns a result or throws an exception
 
Methods inherited from class EDU.oswego.cs.dl.util.concurrent.ThreadFactoryUser
getThreadFactory, setThreadFactory
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TimedCallable

public TimedCallable(Callable function,
                     long millis)
Method Detail

call

public java.lang.Object call()
                      throws java.lang.Exception
Description copied from interface: Callable
Perform some action that returns a result or throws an exception

Specified by:
call in interface Callable
Throws:
java.lang.Exception