Package org.eclipse.jetty.util.thread
Class ShutdownThread
- java.lang.Object
-
- java.lang.Thread
-
- org.eclipse.jetty.util.thread.ShutdownThread
-
- All Implemented Interfaces:
java.lang.Runnable
public class ShutdownThread extends java.lang.Thread
ShutdownThread is a shutdown hook thread implemented as singleton that maintains a list of lifecycle instances that are registered with it and provides ability to stop these lifecycles upon shutdown of the Java Virtual Machine
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
_hooked
private java.util.List<LifeCycle>
_lifeCycles
private static ShutdownThread
_thread
private static Logger
LOG
-
Constructor Summary
Constructors Modifier Constructor Description private
ShutdownThread()
Default constructor for the singleton Registers the instance as shutdown hook with the Java Runtime
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static void
deregister(LifeCycle lifeCycle)
static ShutdownThread
getInstance()
Returns the instance of the singletonprivate void
hook()
static boolean
isRegistered(LifeCycle lifeCycle)
static void
register(int index, LifeCycle... lifeCycles)
static void
register(LifeCycle... lifeCycles)
void
run()
private void
unhook()
-
Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield
-
-
-
-
Field Detail
-
LOG
private static final Logger LOG
-
_thread
private static final ShutdownThread _thread
-
_hooked
private boolean _hooked
-
_lifeCycles
private final java.util.List<LifeCycle> _lifeCycles
-
-
Method Detail
-
hook
private void hook()
-
unhook
private void unhook()
-
getInstance
public static ShutdownThread getInstance()
Returns the instance of the singleton- Returns:
- the singleton instance of the
ShutdownThread
-
register
public static void register(LifeCycle... lifeCycles)
-
register
public static void register(int index, LifeCycle... lifeCycles)
-
deregister
public static void deregister(LifeCycle lifeCycle)
-
isRegistered
public static boolean isRegistered(LifeCycle lifeCycle)
-
run
public void run()
- Specified by:
run
in interfacejava.lang.Runnable
- Overrides:
run
in classjava.lang.Thread
-
-