org.apache.xml.utils

## Class ThreadControllerWrapper.ThreadController

- java.lang.Object
- - org.apache.xml.utils.ThreadControllerWrapper.ThreadController

Enclosing class:
  ThreadControllerWrapper

    public static class ThreadControllerWrapper.ThreadController
    extends java.lang.Object

Thread controller utility class for incremental SAX source. Must be overriden with a derived class to support thread pooling. All thread-related stuff is in this class.

### Constructor Summary

Constructors
Constructor and Description
`ThreadControllerWrapper.ThreadController()`

### Method Summary

Methods
`java.lang.Thread` `run(java.lang.Runnable task, int priority)` Will get a thread from the pool, execute the task and return the thread to the pool.
`void` `waitThread(java.lang.Thread worker, java.lang.Runnable task)` Wait until the task is completed on the worker thread.

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### ThreadControllerWrapper.ThreadController

    public ThreadControllerWrapper.ThreadController()

### Method Detail

#### run

    public java.lang.Thread run(java.lang.Runnable task,
                       int priority)

Will get a thread from the pool, execute the task and return the thread to the pool. The return value is used only to wait for completion NEEDSDOC @param task

Parameters:
  `priority` - if >0 the task will run with the given priority ( doesn't seem to be used in xalan, since it's allways the default )
Returns:
  The thread that is running the task, can be used to wait for completion

#### waitThread

    public void waitThread(java.lang.Thread worker,
                  java.lang.Runnable task)
                    throws java.lang.InterruptedException

Wait until the task is completed on the worker thread. NEEDSDOC @param worker NEEDSDOC @param task

Throws:
  `java.lang.InterruptedException`