| Modifier and Type | Class and Description |
|---|---|
private static interface |
Threads.PrintThreadInfoHelper |
private static class |
Threads.PrintThreadInfoLazyHolder |
| Modifier and Type | Field and Description |
|---|---|
private static org.slf4j.Logger |
LOG |
static Thread.UncaughtExceptionHandler |
LOGGING_EXCEPTION_HANDLER |
private static AtomicInteger |
poolNumber |
| Constructor and Description |
|---|
Threads() |
| Modifier and Type | Method and Description |
|---|---|
static ThreadPoolExecutor |
getBoundedCachedThreadPool(int maxCachedThread,
long timeout,
TimeUnit unit,
ThreadFactory threadFactory)
Create a new CachedThreadPool with a bounded number as the maximum
thread size in the pool.
|
private static ThreadFactory |
getNamedThreadFactory(String prefix)
Returns a
ThreadFactory that names each created thread uniquely,
with a common prefix. |
static ThreadFactory |
newDaemonThreadFactory(String prefix)
Same as {#newDaemonThreadFactory(String, UncaughtExceptionHandler)},
without setting the exception handler.
|
static ThreadFactory |
newDaemonThreadFactory(String prefix,
Thread.UncaughtExceptionHandler handler)
Get a named
ThreadFactory that just builds daemon threads. |
static void |
printThreadInfo(PrintStream stream,
String title)
Print all of the thread's information and stack traces.
|
static <T extends Thread> |
setDaemonThreadRunning(T t)
Utility method that sets name, daemon status and starts passed thread.
|
static <T extends Thread> |
setDaemonThreadRunning(T t,
String name)
Utility method that sets name, daemon status and starts passed thread.
|
static <T extends Thread> |
setDaemonThreadRunning(T t,
String name,
Thread.UncaughtExceptionHandler handler)
Utility method that sets name, daemon status and starts passed thread.
|
static void |
setLoggingUncaughtExceptionHandler(Thread t)
Sets an UncaughtExceptionHandler for the thread which logs the
Exception stack if the thread dies.
|
static void |
shutdown(Thread t)
Shutdown passed thread using isAlive and join.
|
static void |
shutdown(Thread t,
long joinwait)
Shutdown passed thread using isAlive and join.
|
static void |
sleep(long millis)
If interrupted, just prints out the interrupt on STDOUT, resets interrupt and returns
|
static void |
sleepWithoutInterrupt(long msToWait)
Sleeps for the given amount of time even if interrupted.
|
static void |
threadDumpingIsAlive(Thread t) |
private static final org.slf4j.Logger LOG
private static final AtomicInteger poolNumber
public static final Thread.UncaughtExceptionHandler LOGGING_EXCEPTION_HANDLER
public Threads()
public static <T extends Thread> T setDaemonThreadRunning(T t)
t - thread to runt.public static <T extends Thread> T setDaemonThreadRunning(T t, String name)
t - thread to frobname - new namet.public static <T extends Thread> T setDaemonThreadRunning(T t, String name, Thread.UncaughtExceptionHandler handler)
t - thread to frobname - new namehandler - A handler to set on the thread. Pass null if want to use default handler.t.public static void shutdown(Thread t)
t - Thread to shutdownpublic static void shutdown(Thread t, long joinwait)
joinwait - Pass 0 if we're to wait forever.t - Thread to shutdownpublic static void threadDumpingIsAlive(Thread t) throws InterruptedException
t - Waits on the passed thread to die dumping a threaddump every
minute while its up.InterruptedExceptionpublic static void sleep(long millis)
millis - How long to sleep for in milliseconds.public static void sleepWithoutInterrupt(long msToWait)
msToWait - the amount of time to sleep in millisecondspublic static ThreadPoolExecutor getBoundedCachedThreadPool(int maxCachedThread, long timeout, TimeUnit unit, ThreadFactory threadFactory)
maxCachedThread - the maximum thread could be created in the pooltimeout - the maximum time to waitunit - the time unit of the timeout argumentthreadFactory - the factory to use when creating new threadsprivate static ThreadFactory getNamedThreadFactory(String prefix)
ThreadFactory that names each created thread uniquely,
with a common prefix.prefix - The prefix of every created Thread's nameThreadFactory that names threadspublic static ThreadFactory newDaemonThreadFactory(String prefix)
public static ThreadFactory newDaemonThreadFactory(String prefix, Thread.UncaughtExceptionHandler handler)
ThreadFactory that just builds daemon threads.prefix - name prefix for all threads created from the factoryhandler - unhandles exception handler to set for all threadspublic static void setLoggingUncaughtExceptionHandler(Thread t)
public static void printThreadInfo(PrintStream stream, String title)
stream - the stream totitle - a string title for the stack traceCopyright © 2007–2020 The Apache Software Foundation. All rights reserved.