Package org.cip4.jdflib.util.thread
Class MultiTaskQueue
- java.lang.Object
-
- java.lang.Thread
-
- org.cip4.jdflib.util.thread.OrderedTaskQueue
-
- org.cip4.jdflib.util.thread.MultiTaskQueue
-
- All Implemented Interfaces:
java.lang.Runnable
- Direct Known Subclasses:
MultiJobTaskQueue
public class MultiTaskQueue extends OrderedTaskQueue
class to run heavy tasks one at a time
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description intexecuting()static MultiTaskQueuegetCreateQueue(java.lang.String name, int maxParallel)grab the queueintgetCurrentRunning()get the number of currently running tasksintgetMaxParallel()static intgetPercentQueue()booleaninterruptCurrent(int minAge)booleaninterruptTask(java.lang.Runnable theRunner)voidsetMaxParallel(int maxParallel)static voidsetPercentQueue(int percentQueue)voidshutDown()intsize()size of the waiting queuevoidstart()java.lang.StringtoString()-
Methods inherited from class org.cip4.jdflib.util.thread.OrderedTaskQueue
getAvQueue, getAvRun, getCreateQueue, getDone, getSumQueue, getSumRun, isLive, queue, run, shortString, shutDown, shutDownAll, waiting
-
Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, onSpinWait, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, stop, suspend, yield
-
-
-
-
Method Detail
-
getPercentQueue
public static int getPercentQueue()
-
setPercentQueue
public static void setPercentQueue(int percentQueue)
-
getCreateQueue
public static MultiTaskQueue getCreateQueue(java.lang.String name, int maxParallel)
grab the queue- Parameters:
name- - must not be nullmaxParallel- ignored if <=0- Returns:
- the queue to fill with tasks
-
setMaxParallel
public void setMaxParallel(int maxParallel)
- Parameters:
maxParallel-
-
getCurrentRunning
public int getCurrentRunning()
get the number of currently running tasks- Returns:
-
interruptCurrent
public boolean interruptCurrent(int minAge)
- Overrides:
interruptCurrentin classOrderedTaskQueue- Parameters:
minAge- minimum age to interrupt- Returns:
- true if we successfully interrupted or no entries were running
-
interruptTask
public boolean interruptTask(java.lang.Runnable theRunner)
- Parameters:
theRunner- runner to zapp- Returns:
- true if we successfully interrupted or no entries were running
-
start
public void start()
- Overrides:
startin classjava.lang.Thread- See Also:
Thread.start()
-
toString
public java.lang.String toString()
- Overrides:
toStringin classOrderedTaskQueue- Returns:
- See Also:
Thread.toString()
-
getMaxParallel
public int getMaxParallel()
- Returns:
- the maxParallel
-
shutDown
public void shutDown()
- Overrides:
shutDownin classOrderedTaskQueue- See Also:
OrderedTaskQueue.shutDown()
-
executing
public int executing()
- Overrides:
executingin classOrderedTaskQueue- See Also:
OrderedTaskQueue.executing()
-
size
public int size()
Description copied from class:OrderedTaskQueuesize of the waiting queue- Overrides:
sizein classOrderedTaskQueue- Returns:
- See Also:
OrderedTaskQueue.size()
-
-