public class HotSpotAgent
extends java.lang.Object
This class wraps much of the basic functionality and is the highest-level factory for VM data structures. It makes it simple to start up the debugging system.
FIXME: especially with the addition of remote debugging, this has turned into a mess; needs rethinking.
Constructor and Description |
---|
HotSpotAgent() |
Modifier and Type | Method and Description |
---|---|
void |
attach(int processID)
This attaches to a process running on the local machine.
|
void |
attach(JVMDebugger d)
This uses a JVMDebugger that is already attached to the core or process
|
void |
attach(java.lang.String remoteServerID)
This attaches to a "debug server" on a remote machine; this
remote server has already attached to a process or opened a
core file and is waiting for RMI calls on the Debugger object to
come in.
|
void |
attach(java.lang.String javaExecutableName,
java.lang.String coreFileName)
This opens a core file on the local machine
|
boolean |
detach()
This should only be called by the user on the client machine,
not the server machine
|
Debugger |
getDebugger() |
TypeDataBase |
getTypeDataBase() |
boolean |
shutdownServer()
This may only be called on the server side after startServer()
has been called
|
void |
startServer(int processID)
This attaches to a process running on the local machine and
starts a debug server, allowing remote machines to connect and
examine this process.
|
void |
startServer(int processID,
java.lang.String uniqueID)
This attaches to a process running on the local machine and
starts a debug server, allowing remote machines to connect and
examine this process.
|
void |
startServer(java.lang.String javaExecutableName,
java.lang.String coreFileName)
This opens a core file on the local machine and starts a debug
server, allowing remote machines to connect and examine this
core file.
|
void |
startServer(java.lang.String javaExecutableName,
java.lang.String coreFileName,
java.lang.String uniqueID)
This opens a core file on the local machine and starts a debug
server, allowing remote machines to connect and examine this
core file.
|
public Debugger getDebugger()
public TypeDataBase getTypeDataBase()
public void attach(int processID) throws DebuggerException
DebuggerException
public void attach(java.lang.String javaExecutableName, java.lang.String coreFileName) throws DebuggerException
DebuggerException
public void attach(JVMDebugger d) throws DebuggerException
DebuggerException
public void attach(java.lang.String remoteServerID) throws DebuggerException
DebuggerException
public boolean detach() throws DebuggerException
DebuggerException
public void startServer(int processID, java.lang.String uniqueID)
public void startServer(int processID) throws DebuggerException
DebuggerException
public void startServer(java.lang.String javaExecutableName, java.lang.String coreFileName, java.lang.String uniqueID)
public void startServer(java.lang.String javaExecutableName, java.lang.String coreFileName) throws DebuggerException
DebuggerException
public boolean shutdownServer() throws DebuggerException
DebuggerException
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.