@ThreadSafe @ParametersAreNonnullByDefault public final class ExecutionContexts extends Object
Modifier and Type | Field and Description |
---|---|
static long |
DEFAULT_TIMEOUT_NANOS |
Modifier and Type | Method and Description |
---|---|
static long |
computeDeadline(ExecutionContext current,
TimeUnit unit,
long timeout) |
static long |
computeDeadline(long startTimeNanos,
ExecutionContext current,
TimeUnit unit,
long timeout) |
static long |
computeDeadline(long timeout,
TimeUnit unit) |
static long |
computeTimeout(long timeout,
TimeUnit unit) |
static TimeoutDeadline |
computeTimeoutDeadline(ExecutionContext current,
TimeUnit unit,
long timeout)
Compute the actual timeout taking in consideration the context deadline.
|
static ExecutionContext |
createDetached(String name,
ExecutionContext parent,
long startTimeNanos,
long deadlineNanos) |
static ExecutionContext |
current() |
static <T> Callable<T> |
deadlinedPropagatingCallable(Callable<T> callable,
ExecutionContext ctx,
long deadlineNanos) |
static <T> Collection<? extends Callable<T>> |
deadlinedPropagatingCallables(Collection<? extends Callable<T>> tasks,
ExecutionContext ctx,
long deadlineNanos) |
static long |
getContextDeadlineNanos() |
static long |
getContextDeadlineNanos(long currentTime) |
static ExecutionContextFactory<ExecutionContext> |
getContextFactory() |
static long |
getMillisToDeadline() |
static int |
getSecondsToDeadline() |
static long |
getTimeRelativeToDeadline(TimeUnit unit) |
static long |
getTimeToDeadline(TimeUnit unit) |
static int |
getTimeToDeadlineInt(TimeUnit unit) |
static <T> Callable<T> |
propagatingCallable(Callable<T> callable) |
static <T> Callable<T> |
propagatingCallable(Callable<T> callable,
ExecutionContext ctx) |
static <T> Collection<? extends Callable<T>> |
propagatingCallables(Collection<? extends Callable<T>> tasks) |
static <T> Collection<? extends Callable<T>> |
propagatingCallables(Collection<? extends Callable<T>> tasks,
ExecutionContext ctx) |
static Runnable |
propagatingRunnable(Runnable runnable) |
static Runnable |
propagatingRunnable(Runnable runnable,
ExecutionContext ctx) |
static ExecutionContext |
start(ExecutionContext parent) |
static ExecutionContext |
start(ExecutionContext parent,
long startTimeNanos,
long deadlineNanos) |
static ExecutionContext |
start(ExecutionContext parent,
long timeout,
TimeUnit tu) |
static ExecutionContext |
start(long startTimeNanos,
long deadlineNanos)
start a execution context.
|
static ExecutionContext |
start(long timeout,
TimeUnit tu)
start a execution context.
|
static ExecutionContext |
start(String opname) |
static ExecutionContext |
start(String name,
ExecutionContext parent) |
static ExecutionContext |
start(String name,
ExecutionContext parent,
long deadlineNanos) |
static ExecutionContext |
start(String name,
ExecutionContext parent,
long startTimeNanos,
long deadlineNanos) |
static ExecutionContext |
start(String name,
ExecutionContext parent,
long timeout,
TimeUnit tu) |
static ExecutionContext |
start(String name,
long deadlineNanos) |
static ExecutionContext |
start(String name,
long startTimeNanos,
long deadlineNanos) |
static ExecutionContext |
start(String opname,
long timeout,
TimeUnit tu) |
public static ExecutionContextFactory<ExecutionContext> getContextFactory()
@Nullable public static ExecutionContext current()
public static ExecutionContext start(long startTimeNanos, long deadlineNanos)
deadlineNanos
- the deadline for this context. (System.nanotime)public static ExecutionContext start(long timeout, TimeUnit tu)
timeout
- tu
- public static ExecutionContext start(String opname)
public static ExecutionContext start(String opname, long timeout, TimeUnit tu)
public static ExecutionContext start(@Nullable ExecutionContext parent, long timeout, TimeUnit tu)
public static ExecutionContext start(@Nullable ExecutionContext parent)
public static ExecutionContext start(@Nullable ExecutionContext parent, long startTimeNanos, long deadlineNanos)
public static ExecutionContext start(String name, long startTimeNanos, long deadlineNanos)
public static ExecutionContext start(String name, long deadlineNanos)
public static ExecutionContext start(String name, @Nullable ExecutionContext parent)
public static ExecutionContext start(String name, @Nullable ExecutionContext parent, long timeout, TimeUnit tu)
public static ExecutionContext start(String name, @Nullable ExecutionContext parent, long deadlineNanos)
public static ExecutionContext start(String name, @Nullable ExecutionContext parent, long startTimeNanos, long deadlineNanos)
public static ExecutionContext createDetached(String name, @Nullable ExecutionContext parent, long startTimeNanos, long deadlineNanos)
public static long getContextDeadlineNanos()
public static long getContextDeadlineNanos(long currentTime)
@Nonnegative public static long getTimeToDeadline(TimeUnit unit) throws TimeoutException
TimeoutException
@Nonnegative public static int getTimeToDeadlineInt(TimeUnit unit) throws TimeoutException
TimeoutException
@Nonnegative public static long getMillisToDeadline() throws TimeoutException
TimeoutException
@Nonnegative public static int getSecondsToDeadline() throws TimeoutException
TimeoutException
public static long computeDeadline(long timeout, TimeUnit unit)
public static long computeTimeout(long timeout, TimeUnit unit) throws TimeoutException
TimeoutException
public static long computeDeadline(@Nullable ExecutionContext current, TimeUnit unit, long timeout)
public static long computeDeadline(long startTimeNanos, @Nullable ExecutionContext current, TimeUnit unit, long timeout)
public static TimeoutDeadline computeTimeoutDeadline(@Nullable ExecutionContext current, TimeUnit unit, long timeout) throws TimeoutException
current
- the contextunit
- timeout unittimeout
- timeout valueTimeoutException
public static <T> Callable<T> propagatingCallable(Callable<T> callable, ExecutionContext ctx)
public static <T> Collection<? extends Callable<T>> propagatingCallables(Collection<? extends Callable<T>> tasks)
public static <T> Collection<? extends Callable<T>> propagatingCallables(Collection<? extends Callable<T>> tasks, ExecutionContext ctx)
public static <T> Collection<? extends Callable<T>> deadlinedPropagatingCallables(Collection<? extends Callable<T>> tasks, ExecutionContext ctx, long deadlineNanos)
public static <T> Callable<T> deadlinedPropagatingCallable(Callable<T> callable, ExecutionContext ctx, long deadlineNanos)
public static Runnable propagatingRunnable(Runnable runnable, ExecutionContext ctx)
Copyright © 2018 SPF4J. All rights reserved.