org.apache.mina.filter.executor
Class OrderedThreadPoolExecutor

java.lang.Object
  extended by java.util.concurrent.AbstractExecutorService
      extended by java.util.concurrent.ThreadPoolExecutor
          extended by org.apache.mina.filter.executor.OrderedThreadPoolExecutor
All Implemented Interfaces:
java.util.concurrent.Executor, java.util.concurrent.ExecutorService

public class OrderedThreadPoolExecutor
extends java.util.concurrent.ThreadPoolExecutor

A ThreadPoolExecutor that maintains the order of IoEvents.

If you don't need to maintain the order of events per session, please use UnorderedThreadPoolExecutor.

Author:
Apache MINA Project

Nested Class Summary
 
Nested classes/interfaces inherited from class java.util.concurrent.ThreadPoolExecutor
java.util.concurrent.ThreadPoolExecutor.AbortPolicy, java.util.concurrent.ThreadPoolExecutor.CallerRunsPolicy, java.util.concurrent.ThreadPoolExecutor.DiscardOldestPolicy, java.util.concurrent.ThreadPoolExecutor.DiscardPolicy
 
Constructor Summary
OrderedThreadPoolExecutor()
          Creates a default ThreadPool, with default values : - minimum pool size is 0 - maximum pool size is 16 - keepAlive set to 30 seconds - A default ThreadFactory - All events are accepted
OrderedThreadPoolExecutor(int maximumPoolSize)
          Creates a default ThreadPool, with default values : - minimum pool size is 0 - keepAlive set to 30 seconds - A default ThreadFactory - All events are accepted
OrderedThreadPoolExecutor(int corePoolSize, int maximumPoolSize)
          Creates a default ThreadPool, with default values : - keepAlive set to 30 seconds - A default ThreadFactory - All events are accepted
OrderedThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, java.util.concurrent.TimeUnit unit)
          Creates a default ThreadPool, with default values : - A default ThreadFactory - All events are accepted
OrderedThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, java.util.concurrent.TimeUnit unit, IoEventQueueHandler eventQueueHandler)
          Creates a default ThreadPool, with default values : - A default ThreadFactory
OrderedThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, java.util.concurrent.TimeUnit unit, java.util.concurrent.ThreadFactory threadFactory)
          Creates a default ThreadPool, with default values : - A default ThreadFactory
OrderedThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, java.util.concurrent.TimeUnit unit, java.util.concurrent.ThreadFactory threadFactory, IoEventQueueHandler eventQueueHandler)
          Creates a new instance of a OrderedThreadPoolExecutor.
 
Method Summary
 boolean awaitTermination(long timeout, java.util.concurrent.TimeUnit unit)
          
 void execute(java.lang.Runnable task)
          
 int getActiveCount()
          
 long getCompletedTaskCount()
          
 int getCorePoolSize()
          
 int getLargestPoolSize()
          
 int getMaximumPoolSize()
          
 int getPoolSize()
          
 java.util.concurrent.BlockingQueue<java.lang.Runnable> getQueue()
          
 IoEventQueueHandler getQueueHandler()
           
 long getTaskCount()
          
 boolean isShutdown()
          
 boolean isTerminated()
          
 boolean isTerminating()
          
 int prestartAllCoreThreads()
          
 boolean prestartCoreThread()
          
 void purge()
          
 boolean remove(java.lang.Runnable task)
          
 void setCorePoolSize(int corePoolSize)
          
 void setMaximumPoolSize(int maximumPoolSize)
          
 void setRejectedExecutionHandler(java.util.concurrent.RejectedExecutionHandler handler)
          
 void shutdown()
          
 java.util.List<java.lang.Runnable> shutdownNow()
          
 
Methods inherited from class java.util.concurrent.ThreadPoolExecutor
afterExecute, allowCoreThreadTimeOut, allowsCoreThreadTimeOut, beforeExecute, finalize, getKeepAliveTime, getRejectedExecutionHandler, getThreadFactory, setKeepAliveTime, setThreadFactory, terminated
 
Methods inherited from class java.util.concurrent.AbstractExecutorService
invokeAll, invokeAll, invokeAny, invokeAny, newTaskFor, newTaskFor, submit, submit, submit
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OrderedThreadPoolExecutor

public OrderedThreadPoolExecutor()
Creates a default ThreadPool, with default values : - minimum pool size is 0 - maximum pool size is 16 - keepAlive set to 30 seconds - A default ThreadFactory - All events are accepted


OrderedThreadPoolExecutor

public OrderedThreadPoolExecutor(int maximumPoolSize)
Creates a default ThreadPool, with default values : - minimum pool size is 0 - keepAlive set to 30 seconds - A default ThreadFactory - All events are accepted

Parameters:
maximumPoolSize - The maximum pool size

OrderedThreadPoolExecutor

public OrderedThreadPoolExecutor(int corePoolSize,
                                 int maximumPoolSize)
Creates a default ThreadPool, with default values : - keepAlive set to 30 seconds - A default ThreadFactory - All events are accepted

Parameters:
corePoolSize - The initial pool sizePoolSize
maximumPoolSize - The maximum pool size

OrderedThreadPoolExecutor

public OrderedThreadPoolExecutor(int corePoolSize,
                                 int maximumPoolSize,
                                 long keepAliveTime,
                                 java.util.concurrent.TimeUnit unit)
Creates a default ThreadPool, with default values : - A default ThreadFactory - All events are accepted

Parameters:
corePoolSize - The initial pool sizePoolSize
maximumPoolSize - The maximum pool size
keepAliveTime - Default duration for a thread
unit - Time unit used for the keepAlive value

OrderedThreadPoolExecutor

public OrderedThreadPoolExecutor(int corePoolSize,
                                 int maximumPoolSize,
                                 long keepAliveTime,
                                 java.util.concurrent.TimeUnit unit,
                                 IoEventQueueHandler eventQueueHandler)
Creates a default ThreadPool, with default values : - A default ThreadFactory

Parameters:
corePoolSize - The initial pool sizePoolSize
maximumPoolSize - The maximum pool size
keepAliveTime - Default duration for a thread
unit - Time unit used for the keepAlive value
eventQueueHandler - The queue used to store events

OrderedThreadPoolExecutor

public OrderedThreadPoolExecutor(int corePoolSize,
                                 int maximumPoolSize,
                                 long keepAliveTime,
                                 java.util.concurrent.TimeUnit unit,
                                 java.util.concurrent.ThreadFactory threadFactory)
Creates a default ThreadPool, with default values : - A default ThreadFactory

Parameters:
corePoolSize - The initial pool sizePoolSize
maximumPoolSize - The maximum pool size
keepAliveTime - Default duration for a thread
unit - Time unit used for the keepAlive value
threadFactory - The factory used to create threads

OrderedThreadPoolExecutor

public OrderedThreadPoolExecutor(int corePoolSize,
                                 int maximumPoolSize,
                                 long keepAliveTime,
                                 java.util.concurrent.TimeUnit unit,
                                 java.util.concurrent.ThreadFactory threadFactory,
                                 IoEventQueueHandler eventQueueHandler)
Creates a new instance of a OrderedThreadPoolExecutor.

Parameters:
corePoolSize - The initial pool sizePoolSize
maximumPoolSize - The maximum pool size
keepAliveTime - Default duration for a thread
unit - Time unit used for the keepAlive value
threadFactory - The factory used to create threads
eventQueueHandler - The queue used to store events
Method Detail

getQueueHandler

public IoEventQueueHandler getQueueHandler()
Returns:
The associated queue handler.

setRejectedExecutionHandler

public void setRejectedExecutionHandler(java.util.concurrent.RejectedExecutionHandler handler)

Overrides:
setRejectedExecutionHandler in class java.util.concurrent.ThreadPoolExecutor

getMaximumPoolSize

public int getMaximumPoolSize()

Overrides:
getMaximumPoolSize in class java.util.concurrent.ThreadPoolExecutor

setMaximumPoolSize

public void setMaximumPoolSize(int maximumPoolSize)

Overrides:
setMaximumPoolSize in class java.util.concurrent.ThreadPoolExecutor

awaitTermination

public boolean awaitTermination(long timeout,
                                java.util.concurrent.TimeUnit unit)
                         throws java.lang.InterruptedException

Specified by:
awaitTermination in interface java.util.concurrent.ExecutorService
Overrides:
awaitTermination in class java.util.concurrent.ThreadPoolExecutor
Throws:
java.lang.InterruptedException

isShutdown

public boolean isShutdown()

Specified by:
isShutdown in interface java.util.concurrent.ExecutorService
Overrides:
isShutdown in class java.util.concurrent.ThreadPoolExecutor

isTerminated

public boolean isTerminated()

Specified by:
isTerminated in interface java.util.concurrent.ExecutorService
Overrides:
isTerminated in class java.util.concurrent.ThreadPoolExecutor

shutdown

public void shutdown()

Specified by:
shutdown in interface java.util.concurrent.ExecutorService
Overrides:
shutdown in class java.util.concurrent.ThreadPoolExecutor

shutdownNow

public java.util.List<java.lang.Runnable> shutdownNow()

Specified by:
shutdownNow in interface java.util.concurrent.ExecutorService
Overrides:
shutdownNow in class java.util.concurrent.ThreadPoolExecutor

execute

public void execute(java.lang.Runnable task)

Specified by:
execute in interface java.util.concurrent.Executor
Overrides:
execute in class java.util.concurrent.ThreadPoolExecutor

getActiveCount

public int getActiveCount()

Overrides:
getActiveCount in class java.util.concurrent.ThreadPoolExecutor

getCompletedTaskCount

public long getCompletedTaskCount()

Overrides:
getCompletedTaskCount in class java.util.concurrent.ThreadPoolExecutor

getLargestPoolSize

public int getLargestPoolSize()

Overrides:
getLargestPoolSize in class java.util.concurrent.ThreadPoolExecutor

getPoolSize

public int getPoolSize()

Overrides:
getPoolSize in class java.util.concurrent.ThreadPoolExecutor

getTaskCount

public long getTaskCount()

Overrides:
getTaskCount in class java.util.concurrent.ThreadPoolExecutor

isTerminating

public boolean isTerminating()

Overrides:
isTerminating in class java.util.concurrent.ThreadPoolExecutor

prestartAllCoreThreads

public int prestartAllCoreThreads()

Overrides:
prestartAllCoreThreads in class java.util.concurrent.ThreadPoolExecutor

prestartCoreThread

public boolean prestartCoreThread()

Overrides:
prestartCoreThread in class java.util.concurrent.ThreadPoolExecutor

getQueue

public java.util.concurrent.BlockingQueue<java.lang.Runnable> getQueue()

Overrides:
getQueue in class java.util.concurrent.ThreadPoolExecutor

purge

public void purge()

Overrides:
purge in class java.util.concurrent.ThreadPoolExecutor

remove

public boolean remove(java.lang.Runnable task)

Overrides:
remove in class java.util.concurrent.ThreadPoolExecutor

getCorePoolSize

public int getCorePoolSize()

Overrides:
getCorePoolSize in class java.util.concurrent.ThreadPoolExecutor

setCorePoolSize

public void setCorePoolSize(int corePoolSize)

Overrides:
setCorePoolSize in class java.util.concurrent.ThreadPoolExecutor


Copyright © 2004-2011 Apache MINA Project. All Rights Reserved.