Package org.apache.catalina.tribes.transport

## Class RxTaskPool

- java.lang.Object
- - org.apache.catalina.tribes.transport.RxTaskPool

-     public class RxTaskPool
      extends java.lang.Object

  A very simple thread pool class. The pool size is set at construction time and remains fixed. Threads are cycled through a FIFO idle queue.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static interface` | `RxTaskPool.TaskCreator` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `RxTaskPool​(int maxTasks, int minTasks, RxTaskPool.TaskCreator creator)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `int` | `available()` |
    `protected void` | `configureTask​(AbstractRxTask task)` |
    `int` | `getMaxThreads()` |
    `int` | `getMinThreads()` |
    `AbstractRxTask` | `getRxTask()` | Find an idle worker thread, if any.
    `RxTaskPool.TaskCreator` | `getTaskCreator()` |
    `void` | `returnWorker​(AbstractRxTask worker)` | Called by the worker thread to return itself to the idle pool.
    `void` | `setMaxTasks​(int maxThreads)` |
    `void` | `setMinTasks​(int minThreads)` |
    `void` | `stop()` |

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

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

- - ### Constructor Detail

    - #### RxTaskPool

          public RxTaskPool​(int maxTasks,
                            int minTasks,
                            RxTaskPool.TaskCreator creator)
                     throws java.lang.Exception

      Throws:
        `java.lang.Exception`

  - ### Method Detail

    - #### configureTask

          protected void configureTask​(AbstractRxTask task)

    - #### getRxTask

          public AbstractRxTask getRxTask()

      Find an idle worker thread, if any. Could return null.
      Returns:
        a worker

    - #### available

          public int available()

    - #### returnWorker

          public void returnWorker​(AbstractRxTask worker)

      Called by the worker thread to return itself to the idle pool.
      Parameters:
        `worker` - The worker

    - #### getMaxThreads

          public int getMaxThreads()

    - #### getMinThreads

          public int getMinThreads()

    - #### stop

          public void stop()

    - #### setMaxTasks

          public void setMaxTasks​(int maxThreads)

    - #### setMinTasks

          public void setMinTasks​(int minThreads)

    - #### getTaskCreator

          public RxTaskPool.TaskCreator getTaskCreator()