public final class ThreadUtil
extends java.lang.Object
java.lang.Thread-related utility methods.| Modifier and Type | Method and Description |
|---|---|
static <EX extends java.lang.Throwable> |
parallel(java.lang.Iterable<? extends RunnableWhichThrows<EX>> runnables) |
static <EX extends java.lang.Throwable> |
parallel(java.lang.Iterable<? extends RunnableWhichThrows<EX>> runnables,
java.lang.Iterable<Stoppable> stoppables) |
static void |
parallel(java.lang.Runnable[] runnables,
java.lang.Iterable<Stoppable> stoppables)
Invokes the
run method of all runnables in parallel threads (including the current
thread). |
static <EX extends java.lang.Throwable> |
parallel(RunnableWhichThrows<EX> runnable1,
RunnableWhichThrows<EX> runnable2,
Stoppable stoppable)
Executes the two
runnables in parallel before it returns. |
static Stoppable |
runInBackground(java.lang.Runnable runnable,
java.lang.String threadName)
Execute the given
runnable in a background thread |
static <EX extends java.lang.Throwable> |
runInBackground(RunnableWhichThrows<EX> runnable,
java.lang.String threadName) |
static <R extends RunnableWhichThrows<EX>,EX extends java.lang.Throwable> |
runInForeground(java.lang.Iterable<R> runnables)
Runs all but the last of
runnables in the background, and the last of runnables in the
foreground. |
static <EX extends java.lang.Throwable> |
runInForeground(RunnableWhichThrows<EX> runnable)
Executes the given
runnable. |
public static Stoppable runInBackground(java.lang.Runnable runnable, @Nullable java.lang.String threadName)
runnable in a background threadpublic static <EX extends java.lang.Throwable> Stoppable runInBackground(RunnableWhichThrows<EX> runnable, @Nullable java.lang.String threadName)
runInBackground(Runnable, String)public static <EX extends java.lang.Throwable> void runInForeground(RunnableWhichThrows<EX> runnable) throws EX extends java.lang.Throwable
runnable.EX extends java.lang.Throwablepublic static <EX extends java.lang.Throwable> void parallel(RunnableWhichThrows<EX> runnable1, RunnableWhichThrows<EX> runnable2, Stoppable stoppable) throws EX extends java.lang.Throwable
runnables in parallel before it returns.EX extends java.lang.Throwablepublic static <EX extends java.lang.Throwable> void parallel(java.lang.Iterable<? extends RunnableWhichThrows<EX>> runnables) throws EX extends java.lang.Throwable
EX extends java.lang.Throwableparallel(Runnable[], Iterable)public static <EX extends java.lang.Throwable> void parallel(java.lang.Iterable<? extends RunnableWhichThrows<EX>> runnables, java.lang.Iterable<Stoppable> stoppables) throws EX extends java.lang.Throwable
EX extends java.lang.Throwableparallel(Runnable[], Iterable)public static void parallel(java.lang.Runnable[] runnables,
java.lang.Iterable<Stoppable> stoppables)
run method of all runnables in parallel threads (including the current
thread). When the first of these invocations returns, then all threads are interrupted (which awakes them from blocking I/O), and also on all stoppables Stoppable.stop()
is called. When all the threads have been joined, this method returns.public static <R extends RunnableWhichThrows<EX>,EX extends java.lang.Throwable> void runInForeground(java.lang.Iterable<R> runnables) throws EX extends java.lang.Throwable
runnables in the background, and the last of runnables in the
foreground.EX extends java.lang.Throwable