com.mchange.v2.async
Class ThreadPerTaskAsynchronousRunner

java.lang.Object
  extended by com.mchange.v2.async.ThreadPerTaskAsynchronousRunner
All Implemented Interfaces:
ClosableResource, AsynchronousRunner

public class ThreadPerTaskAsynchronousRunner
extends Object
implements AsynchronousRunner


Constructor Summary
ThreadPerTaskAsynchronousRunner(int max_task_threads)
           
ThreadPerTaskAsynchronousRunner(int max_task_threads, long interrupt_task_delay)
           
 
Method Summary
 void close()
          Clean-up resources held by this asynchronous runner as soon as possible.
 void close(boolean skip_remaining_tasks)
          Finish with this AsynchronousRunner, and clean-up any Threads or resources it may hold.
 int getRunningCount()
           
 Collection getRunningTasks()
           
 int getWaitingCount()
           
 Collection getWaitingTasks()
           
 boolean isClosed()
           
 boolean isDoneAndGone()
           
 void postRunnable(Runnable r)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ThreadPerTaskAsynchronousRunner

public ThreadPerTaskAsynchronousRunner(int max_task_threads)

ThreadPerTaskAsynchronousRunner

public ThreadPerTaskAsynchronousRunner(int max_task_threads,
                                       long interrupt_task_delay)
Method Detail

postRunnable

public void postRunnable(Runnable r)
Specified by:
postRunnable in interface AsynchronousRunner

close

public void close()
Description copied from interface: AsynchronousRunner
Clean-up resources held by this asynchronous runner as soon as possible. Remaining tasks are skipped if possible, and any tasks executing when close() is called may or may not be interrupted. Equivalent to close( true ).

Specified by:
close in interface ClosableResource
Specified by:
close in interface AsynchronousRunner

close

public void close(boolean skip_remaining_tasks)
Description copied from interface: AsynchronousRunner
Finish with this AsynchronousRunner, and clean-up any Threads or resources it may hold.

Specified by:
close in interface AsynchronousRunner
Parameters:
skip_remaining_tasks - Should be regarded as a hint, not a guarantee. If true, pending, not-yet-performed tasks will be skipped, if possible. Currently executing tasks may or may not be interrupted. If false, all previously scheduled tasks will be completed prior to clean-up. The method returns immediately regardless.

getRunningCount

public int getRunningCount()

getRunningTasks

public Collection getRunningTasks()

getWaitingCount

public int getWaitingCount()

getWaitingTasks

public Collection getWaitingTasks()

isClosed

public boolean isClosed()

isDoneAndGone

public boolean isDoneAndGone()