Save This Page
Home » quartz-1.6.0 » org » quartz » spi » [javadoc | source]
org.quartz.spi
public interface: ThreadPool [javadoc | source]

All Known Implementing Classes:
    SimpleThreadPool

The interface to be implemented by classes that want to provide a thread pool for the org.quartz.core.QuartzScheduler 's use.

ThreadPool implementation instances should ideally be made for the sole use of Quartz. Most importantly, when the method blockForAvailableThreads() returns a value of 1 or greater, there must still be at least one available thread in the pool when the method runInThread(Runnable) is called a few moments (or many moments) later. If this assumption does not hold true, it may result in extra JobStore queries and updates, and if clustering features are being used, it may result in greater imballance of load.

Method from org.quartz.spi.ThreadPool Summary:
blockForAvailableThreads,   getPoolSize,   initialize,   runInThread,   shutdown
Method from org.quartz.spi.ThreadPool Detail:
 public int blockForAvailableThreads()

    Determines the number of threads that are currently available in in the pool. Useful for determining the number of times runInThread(Runnable) can be called before returning false.

    The implementation of this method should block until there is at least one available thread.

 public int getPoolSize()
 public  void initialize() throws SchedulerConfigException

    Called by the QuartzScheduler before the ThreadPool is used, in order to give the it a chance to initialize.

 public boolean runInThread(Runnable runnable)

    Execute the given java.lang.Runnable in the next available Thread.

    The implementation of this interface should not throw exceptions unless there is a serious problem (i.e. a serious misconfiguration). If there are no immediately available threads false should be returned.

 public  void shutdown(boolean waitForJobsToComplete)

    Called by the QuartzScheduler to inform the ThreadPool that it should free up all of it's resources because the scheduler is shutting down.