Package com.swiftmq.client.thread
Class ThreadPoolImpl
- java.lang.Object
-
- com.swiftmq.client.thread.ThreadPoolImpl
-
- All Implemented Interfaces:
ThreadPool
public class ThreadPoolImpl extends java.lang.Object implements ThreadPool
-
-
Constructor Summary
Constructors Constructor Description ThreadPoolImpl(java.lang.String poolName, boolean daemonThreads, int minThreads, int maxThreads, int threshold, int addThreads, int priority, long idleTimeout)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Closes the pool.void
dispatchTask(AsyncTask task)
Dispatch a task into the pool.void
freeze(FreezeCompletionListener listener)
Freezes this pool.int
getNumberIdlingThreads()
Returns the number of currently idling threads.int
getNumberRunningThreads()
Returns the number of currently running threads.java.lang.String
getPoolName()
Returns the pool name.void
stop()
Stops the pool.void
unfreeze()
Unfreezes this pool.
-
-
-
Method Detail
-
getPoolName
public java.lang.String getPoolName()
Description copied from interface:ThreadPool
Returns the pool name.- Specified by:
getPoolName
in interfaceThreadPool
- Returns:
- pool name.
-
getNumberRunningThreads
public int getNumberRunningThreads()
Description copied from interface:ThreadPool
Returns the number of currently running threads. Used from management tools only.- Specified by:
getNumberRunningThreads
in interfaceThreadPool
- Returns:
- number of running threads.
-
getNumberIdlingThreads
public int getNumberIdlingThreads()
Description copied from interface:ThreadPool
Returns the number of currently idling threads. Used from management tools only.- Specified by:
getNumberIdlingThreads
in interfaceThreadPool
- Returns:
- number of idling threads.
-
dispatchTask
public void dispatchTask(AsyncTask task)
Description copied from interface:ThreadPool
Dispatch a task into the pool.- Specified by:
dispatchTask
in interfaceThreadPool
- Parameters:
task
- the task to dispatch.
-
freeze
public void freeze(FreezeCompletionListener listener)
Description copied from interface:ThreadPool
Freezes this pool. That is, the current running tasks are completed but no further tasks will be scheduled until unfreeze() is called. It is possible to dispatch tasks during freeze. However, these will be executed after unfreeze() is called.- Specified by:
freeze
in interfaceThreadPool
- Parameters:
listener
- will be called when the pool is freezed.
-
unfreeze
public void unfreeze()
Description copied from interface:ThreadPool
Unfreezes this pool.- Specified by:
unfreeze
in interfaceThreadPool
-
stop
public void stop()
Description copied from interface:ThreadPool
Stops the pool. Internal use only.- Specified by:
stop
in interfaceThreadPool
-
close
public void close()
Description copied from interface:ThreadPool
Closes the pool. Internal use only.- Specified by:
close
in interfaceThreadPool
-
-