VMDisconnectEvent).
Thus, this event will NOT occur if external forces terminate
the connection (e.g. a crash) or if the connection is intentionally
terminated with VirtualMachine.dispose()
On VM termination, a single unsolicited VMDeathEvent will always be sent with a
suspend policy
of SUSPEND_NONE.
Additional VMDeathEvents will be sent in the same event set if they are
requested with a VMDeathRequest.
The VM is still intact and can be queried at the point this event was initiated but immediately thereafter it is not considered intact and cannot be queried.
Note
If the enclosing EventSet has a
suspend policy other than
SUSPEND_ALL
the initiating point may be long past.
All VMDeathEvents will be in a single EventSet,
no other events will be in the event set. A resume
must occur to continue execution after any event set which
performs suspensions - in this case to allow proper shutdown.
VMDisconnectEvent, EventRequestManager#createVMDeathRequest, VMDeathRequest, EventQueue, VirtualMachine