Package jadx.api.utils.tasks
Interface ITaskExecutor
-
- All Known Implementing Classes:
TaskExecutor
public interface ITaskExecutorSchedule and execute tasks combined into stages with parallel or sequential execution (similar to the fork-join pattern).
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidaddParallelTasks(java.util.List<? extends java.lang.Runnable> parallelTasks)Add parallel stage with provided tasksvoidaddSequentialTask(java.lang.Runnable task)Add sequential stage with a single taskvoidaddSequentialTasks(java.util.List<? extends java.lang.Runnable> seqTasks)Add sequential stage with provided tasksvoidawaitTermination()Block until execution is finishedvoidexecute()Start tasks execution.@Nullable java.util.concurrent.ExecutorServicegetInternalExecutor()Return internal executor service.intgetProgress()intgetTasksCount()Scheduled tasks countintgetThreadsCount()booleanisRunning()booleanisTerminating()voidsetThreadsCount(int threadsCount)Set threads count for parallel stage.voidterminate()Not started tasks will be not executed after this method invocation.
-
-
-
Method Detail
-
addParallelTasks
void addParallelTasks(java.util.List<? extends java.lang.Runnable> parallelTasks)
Add parallel stage with provided tasks
-
addSequentialTasks
void addSequentialTasks(java.util.List<? extends java.lang.Runnable> seqTasks)
Add sequential stage with provided tasks
-
addSequentialTask
void addSequentialTask(java.lang.Runnable task)
Add sequential stage with a single task
-
getTasksCount
int getTasksCount()
Scheduled tasks count
-
setThreadsCount
void setThreadsCount(int threadsCount)
Set threads count for parallel stage. Can be changed during execution. Defaults to half of processors count.
-
getThreadsCount
int getThreadsCount()
-
execute
void execute()
Start tasks execution.
-
getProgress
int getProgress()
-
terminate
void terminate()
Not started tasks will be not executed after this method invocation.
-
isTerminating
boolean isTerminating()
-
isRunning
boolean isRunning()
-
awaitTermination
void awaitTermination()
Block until execution is finished
-
getInternalExecutor
@Nullable @Nullable java.util.concurrent.ExecutorService getInternalExecutor()
Return internal executor service.
-
-