Package org.burningwave.core.concurrent
Class QueuedTasksExecutor
java.lang.Object
org.burningwave.core.concurrent.QueuedTasksExecutor
- All Implemented Interfaces:
AutoCloseable,Closeable,Identifiable,ManagedLogger
public class QueuedTasksExecutor extends Object implements Closeable, ManagedLogger
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classQueuedTasksExecutor.Groupstatic classQueuedTasksExecutor.ProducerTask<T>static classQueuedTasksExecutor.Taskstatic classQueuedTasksExecutor.TaskAbst<E,T extends QueuedTasksExecutor.TaskAbst<E,T>>Nested classes/interfaces inherited from interface org.burningwave.core.ManagedLogger
ManagedLogger.Repository -
Method Summary
Modifier and Type Method Description <E, T extends QueuedTasksExecutor.TaskAbst<E, T>>
booleanabort(T task)QueuedTasksExecutorchangePriority(int priority)voidclose()static QueuedTasksExecutorcreate(String executorName, Thread.Supplier threadSupplier, int initialPriority)static QueuedTasksExecutorcreate(String executorName, Thread.Supplier threadSupplier, int initialPriority, boolean daemon, boolean undestroyable)QueuedTasksExecutor.TaskcreateTask(ThrowingRunnable<? extends Throwable> executable)<T> QueuedTasksExecutor.ProducerTask<T>createTask(ThrowingSupplier<T,? extends Throwable> executable)StringgetInfoAsString()voidlogInfo()voidlogStatus()QueuedTasksExecutorresumeFromSuspension()QueuedTasksExecutorsetTasksCreationTrackingFlag(boolean flag)booleanshutDown(boolean waitForTasksTermination)QueuedTasksExecutorsuspend(boolean immediately, boolean ignoreDeadLocked)QueuedTasksExecutorsuspend(boolean immediately, int priority, boolean ignoreDeadLocked)<E, T extends QueuedTasksExecutor.TaskAbst<E, T>>
QueuedTasksExecutorwaitFor(T task)<E, T extends QueuedTasksExecutor.TaskAbst<E, T>>
QueuedTasksExecutorwaitFor(T task, boolean ignoreDeadLocked)<E, T extends QueuedTasksExecutor.TaskAbst<E, T>>
QueuedTasksExecutorwaitFor(T task, int priority, boolean ignoreDeadLocked)QueuedTasksExecutorwaitForTasksEnding()QueuedTasksExecutorwaitForTasksEnding(int priority, boolean ignoreDeadLocked)QueuedTasksExecutorwaitForTasksEnding(int priority, boolean waitForNewAddedTasks, boolean ignoreDeadLocked)Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.burningwave.core.Closeable
closeResources, closeResources, createCloseResoucesTask, createCloseResoucesTaskMethods inherited from interface org.burningwave.core.Identifiable
getId, getOperationId
-
Method Details
-
create
public static QueuedTasksExecutor create(String executorName, Thread.Supplier threadSupplier, int initialPriority) -
create
public static QueuedTasksExecutor create(String executorName, Thread.Supplier threadSupplier, int initialPriority, boolean daemon, boolean undestroyable) -
setTasksCreationTrackingFlag
-
createTask
public <T> QueuedTasksExecutor.ProducerTask<T> createTask(ThrowingSupplier<T,? extends Throwable> executable) -
createTask
-
waitFor
-
waitFor
public <E, T extends QueuedTasksExecutor.TaskAbst<E, T>> QueuedTasksExecutor waitFor(T task, boolean ignoreDeadLocked) -
waitFor
public <E, T extends QueuedTasksExecutor.TaskAbst<E, T>> QueuedTasksExecutor waitFor(T task, int priority, boolean ignoreDeadLocked) -
waitForTasksEnding
-
abort
-
waitForTasksEnding
public QueuedTasksExecutor waitForTasksEnding(int priority, boolean waitForNewAddedTasks, boolean ignoreDeadLocked) -
waitForTasksEnding
-
changePriority
-
suspend
-
suspend
-
resumeFromSuspension
-
shutDown
public boolean shutDown(boolean waitForTasksTermination) -
logStatus
public void logStatus() -
getInfoAsString
-
logInfo
public void logInfo() -
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable
-