public class ShutdownHookProcessDestroyer extends java.lang.Object implements ProcessDestroyer, java.lang.Runnable
Process
es when the VM exits.Constructor and Description |
---|
ShutdownHookProcessDestroyer()
Constructs a
ProcessDestroyer and obtains
Runtime.addShutdownHook() and
Runtime.removeShutdownHook() through reflection. |
Modifier and Type | Method and Description |
---|---|
boolean |
add(java.lang.Process process)
Returns
true if the specified Process was
successfully added to the list of processes to destroy upon VM exit. |
boolean |
isAddedAsShutdownHook()
Returns whether or not the ProcessDestroyer is registered as as shutdown
hook
|
boolean |
remove(java.lang.Process process)
Returns
true if the specified Process was
successfully removed from the list of processes to destroy upon VM exit. |
void |
run()
Invoked by the VM when it is exiting.
|
int |
size()
Returns the number of registered processes.
|
public ShutdownHookProcessDestroyer()
ProcessDestroyer
and obtains
Runtime.addShutdownHook()
and
Runtime.removeShutdownHook()
through reflection. The
ProcessDestroyer manages a list of processes to be destroyed when the VM
exits. If a process is added when the list is empty, this
ProcessDestroyer
is registered as a shutdown hook. If
removing a process results in an empty list, the
ProcessDestroyer
is removed as a shutdown hook.public boolean isAddedAsShutdownHook()
public boolean add(java.lang.Process process)
true
if the specified Process
was
successfully added to the list of processes to destroy upon VM exit.add
in interface ProcessDestroyer
process
- the process to addtrue
if the specified Process
was
successfully addedpublic boolean remove(java.lang.Process process)
true
if the specified Process
was
successfully removed from the list of processes to destroy upon VM exit.remove
in interface ProcessDestroyer
process
- the process to removetrue
if the specified Process
was
successfully removedpublic int size()
size
in interface ProcessDestroyer
public void run()
run
in interface java.lang.Runnable
Copyright © 2010 - 2020 Adobe. All Rights Reserved