return (!skipping && isRunnable() && isRunning() &&
activeTasks.size() <= MAX_TASK_EXECS &&
currentTime - lastDispatchTime >= SPECULATIVE_LAG &&
completes == 0 && !isOnlyCommitPending() &&
(taskStats.mean() - getCurrentProgressRate(currentTime) >
taskStats.std() * job.getSlowTaskThreshold()));
}
/**
* Is the task currently speculating?
*/