Methods Summary |
---|
private boolean | canShutdown()
return (nativeQueueEmpty && awtQueueEmpty && windowListEmpty) ||
forcedShutdown;
|
private void | checkShutdown()
if (canShutdown()) {
shutdown();
} else {
keepAlive();
}
|
public synchronized void | forceShutdown()
forcedShutdown = true;
shutdown();
|
private void | keepAlive()
if (thread == null) {
thread = new ShutdownThread();
thread.start();
}
|
public synchronized void | setAwtQueueEmpty(boolean empty)
awtQueueEmpty = empty;
checkShutdown();
|
public synchronized void | setNativeQueueEmpty(boolean empty)
nativeQueueEmpty = empty;
checkShutdown();
|
public synchronized void | setWindowListEmpty(boolean empty)
windowListEmpty = empty;
checkShutdown();
|
private void | shutdown()
if (thread != null) {
thread.shutdown();
thread = null;
}
|
public synchronized void | start()
keepAlive();
|