org.apache.activemq.thread
Class TaskRunnerFactory

java.lang.Object
  extended by org.apache.activemq.thread.TaskRunnerFactory
All Implemented Interfaces:
java.util.concurrent.Executor

public class TaskRunnerFactory
extends java.lang.Object
implements java.util.concurrent.Executor

Manages the thread pool for long running tasks. Long running tasks are not always active but when they are active, they may need a few iterations of processing for them to become idle. The manager ensures that each task is processes but that no one task overtakes the system. This is kinda like cooperative multitasking.


Constructor Summary
TaskRunnerFactory()
           
TaskRunnerFactory(java.lang.String name, int priority, boolean daemon, int maxIterationsPerRun, boolean dedicatedTaskRunner)
           
 
Method Summary
protected  java.util.concurrent.ExecutorService createDefaultExecutor()
           
 TaskRunner createTaskRunner(Task task, java.lang.String name)
           
 void execute(java.lang.Runnable runnable)
           
 void execute(java.lang.Runnable runnable, java.lang.String name)
           
 java.util.concurrent.ExecutorService getExecutor()
           
 int getMaxIterationsPerRun()
           
 java.lang.String getName()
           
 int getPriority()
           
 void init()
           
 boolean isDaemon()
           
 boolean isDedicatedTaskRunner()
           
 void setDaemon(boolean daemon)
           
 void setDedicatedTaskRunner(boolean dedicatedTaskRunner)
           
 void setExecutor(java.util.concurrent.ExecutorService executor)
           
 void setMaxIterationsPerRun(int maxIterationsPerRun)
           
 void setName(java.lang.String name)
           
 void setPriority(int priority)
           
 void shutdown()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TaskRunnerFactory

public TaskRunnerFactory()

TaskRunnerFactory

public TaskRunnerFactory(java.lang.String name,
                         int priority,
                         boolean daemon,
                         int maxIterationsPerRun,
                         boolean dedicatedTaskRunner)
Method Detail

init

public void init()

shutdown

public void shutdown()

createTaskRunner

public TaskRunner createTaskRunner(Task task,
                                   java.lang.String name)

execute

public void execute(java.lang.Runnable runnable)
Specified by:
execute in interface java.util.concurrent.Executor

execute

public void execute(java.lang.Runnable runnable,
                    java.lang.String name)

createDefaultExecutor

protected java.util.concurrent.ExecutorService createDefaultExecutor()

getExecutor

public java.util.concurrent.ExecutorService getExecutor()

setExecutor

public void setExecutor(java.util.concurrent.ExecutorService executor)

getMaxIterationsPerRun

public int getMaxIterationsPerRun()

setMaxIterationsPerRun

public void setMaxIterationsPerRun(int maxIterationsPerRun)

getName

public java.lang.String getName()

setName

public void setName(java.lang.String name)

getPriority

public int getPriority()

setPriority

public void setPriority(int priority)

isDaemon

public boolean isDaemon()

setDaemon

public void setDaemon(boolean daemon)

isDedicatedTaskRunner

public boolean isDedicatedTaskRunner()

setDedicatedTaskRunner

public void setDedicatedTaskRunner(boolean dedicatedTaskRunner)


Copyright © 2005-2015. All Rights Reserved.