Class DeterministicTaskQueue
java.lang.Object
org.elasticsearch.cluster.coordination.DeterministicTaskQueue
-
Constructor Summary
ConstructorsConstructorDescriptionDeterministicTaskQueue(org.elasticsearch.common.settings.Settings settings, Random random) -
Method Summary
Modifier and TypeMethodDescriptionvoidAdvance the current time to the time of the next deferred task, and update the sets of deferred and runnable tasks accordingly.longlonglongorg.elasticsearch.threadpool.ThreadPoolorg.elasticsearch.threadpool.ThreadPoolgetThreadPool(Function<Runnable,Runnable> runnableWrapper)booleanbooleanvoidvoidvoidvoidRuns an arbitrary runnable task.voidscheduleAt(long executionTimeMillis, Runnable task)Schedule a task for future execution.voidscheduleNow(Runnable task)Schedule a task for immediate execution.voidsetExecutionDelayVariabilityMillis(long executionDelayVariabilityMillis)
-
Constructor Details
-
DeterministicTaskQueue
-
-
Method Details
-
getExecutionDelayVariabilityMillis
public long getExecutionDelayVariabilityMillis() -
setExecutionDelayVariabilityMillis
public void setExecutionDelayVariabilityMillis(long executionDelayVariabilityMillis) -
runAllRunnableTasks
public void runAllRunnableTasks() -
runAllTasks
public void runAllTasks() -
runAllTasksInTimeOrder
public void runAllTasksInTimeOrder() -
hasRunnableTasks
public boolean hasRunnableTasks()- Returns:
- whether there are any runnable tasks.
-
hasDeferredTasks
public boolean hasDeferredTasks()- Returns:
- whether there are any deferred tasks, i.e. tasks that are scheduled for the future.
-
getCurrentTimeMillis
public long getCurrentTimeMillis()- Returns:
- the current (simulated) time, in milliseconds.
-
runRandomTask
public void runRandomTask()Runs an arbitrary runnable task. -
scheduleNow
Schedule a task for immediate execution. -
scheduleAt
Schedule a task for future execution. -
advanceTime
public void advanceTime()Advance the current time to the time of the next deferred task, and update the sets of deferred and runnable tasks accordingly. -
getThreadPool
public org.elasticsearch.threadpool.ThreadPool getThreadPool()- Returns:
- A
ThreadPoolthat uses this task queue.
-
getThreadPool
public org.elasticsearch.threadpool.ThreadPool getThreadPool(Function<Runnable,Runnable> runnableWrapper)- Returns:
- A
ThreadPoolthat uses this task queue and wrapsRunnables in the given wrapper.
-
getLatestDeferredExecutionTime
public long getLatestDeferredExecutionTime()
-