JOL object header information

Aleksey Shipilev aleksey.shipilev at oracle.com
Mon Dec 15 15:27:51 UTC 2014


On 15.12.2014 18:02, serkan özal wrote:
> 1. Try to find SA jar in the classpath. (User may provide the sa-jdi.jar)
>     1.1. If couldn't be found, look at $JAVA_HOME/lib/sa-jdi.jar (as you
> offered)
>         1.1.1. If SA jar is available at there, use it
>         1.1.2. Throw exception, or display a warning message that some
> features of JOL is not supported because of non-existing SA library. Or
> use compisite sa-jdi.jar via JVM version aware classloader by printing a
> log message about because of minor version changes, somethings may be
> broken.

Print warning, and gracefully degrade.

>     1.2. Use SA from classpath.
> 2. Create a new process to attach current process with SA. (If current
> processes attaches itself as Instrumentation agent, current process
> hangs forever, because when SA agent is attached to a JVM process, JVM
> suspends attached process)
> 3. Get data from current process with newly created process.
> 4. Return result to current process (caller process) via pipe between
> processes (Input/Output Stream)
> 
> WDYT ?

Yes, that would be perfect.

-Aleksey.



More information about the jol-dev mailing list